View Full Version : A Plea to DogMeat and Other Scripting Geniuses
thejerk
11-02-2002, 11:21 AM
So I decided I wanted to have a CTF night. I actually received a lot of praise on the idea and support in getting this set up. A couple people even offered to help add to the three maps I had (Caen, City Hall and Eye of the Needle). Here's what happened the first time I ran the config for this event:
75% of my slots full on a 16 person server, and the fps slowly decreased for everyone on Eye of the Needle. It was crazy because I tested this map with 6 people before and didn't see any performance issues at all except for the rain (I removed the rain prior to running this test).
I then switch to Push City Hall. It was fun for about 60 seconds. I wanted to restart the map because a lot of people took a little longer to load it then the rest of us and it was hardly fair. However, starting with one of my own, a couple people started jumping a wall to get under the map and take people out left and right. You can't imagine the frustration levels I was experiencing. :evil:
Anyway, to the question. I wanted to add a stuka like DM did in Destroyed Village. I opened DogTagz to see how this was done and then inserted the same code using the coords I picked up when I found the wall in question. However, wehn I load this from my machine to test it the stuka doesn't show up. What am I doing wrong?
As far as keeping the topic of the site, I consider this to be an admin issue as admins should stick together to fix these small problems with great maps like Push City Hall. It would be a great resource to combine all of these little 'fixes', specifically server-side. What do you guys think?
Druid
11-02-2002, 02:00 PM
I can fix this for you if you want.
One of the MOB servers runs only new maps and we've found several issues on different maps, that I've fixed.
Get in the game and goto where you need the fix.
Open up console and type viewpos.
This will return your map coordinates.
(1528, -1452 12) <--- it will look something like this
Post or email me the coordinates and I can make an invisible wall to block the spot. Or spwan a stuka or whatever you want.
thejerk
11-02-2002, 02:20 PM
I used rcon coords and here's what I got:
2388.64 -4424.36 112.13
Could you also explain how you're doing this so that I could do this with other maps? That way, when one of us finds a problem with a particular map (if RD goes along with this), we could fix it ourselves and post the fix to this site for everyone. Sorta like cleaning a mess because you came across it, even if you didn't make it (something my good ol' Mom used to say all the time heheh)
Druid
11-02-2002, 02:30 PM
here is an exanple of what I used for ac_battlefield.
To block a way under the map.
///Spawn Cheat Fix
local.block = spawn script_model
local.block model "static/barbwire_two_post.tik"
local.block.origin = ( 874 4150 200 )
local.block.angles = (0 75 0)
local.block hide
local.block = spawn script_model
local.block model "static/barbwire_two_post.tik"
local.block.origin = ( 1070 4100 200 )
local.block.angles = (0 75 0)
local.block hide
If you want to make somthing invisible you can use
local.block hide
or
local.block.scale = 0.000001
The above just makes it to small to be seen.
My fix will have to wait for a little bit..
The wife is bugging me to do something :?
thejerk
11-02-2002, 04:32 PM
Well, it's crude, but it does the trick. I left it visible so you could see it and perhaps it would deter someone from trying, but I'm sure the determined will find a way (I'm sure you know how it could be done). Anyway, I have two files:
http://www.allaboutnothing.net/z-pushcity-fix.zip
This one is just the basic fix.
http://www.allaboutnothing.net/z-pushcity-norain-fix.zip
This one removes the rain and shutter movements, reducing lag for slower computers (we all have regulars to our servers who appreciate this).
Enjoy!
sounds good chicken boo.
Will you be on TS later tonight? I need to ask you a question about your provider, Need to change before Nov.11th.
YoChoyLaMuete
11-02-2002, 08:48 PM
mmmmmmmmmmmmmm... just a warning... be carefull when spawning static class items through .scr ; usually the throw a lot of errors on the server console (1 error per second). That's why DM changed his primary fix for Omaha from fences to a sherman tank.
Regards
thejerk
11-02-2002, 08:50 PM
So that would explain lag issues on the modded version of Algiers. Good to know.
Do you know if it's just static objects?
YoChoyLaMuete
11-02-2002, 08:57 PM
I think yes, but you can always try it local and see what's being shown on the server console :D
EDIT: Ops!! I almost forgot!! I think the errors only show up if you are using set developer 1 - most probably they are happening also with developer 0, but they are not reported.
Druid
11-02-2002, 09:41 PM
ChickenBoo......
I was just about to work on your problem, but it look like you already figured it out.
If you do still need some help with the CityHall. Let me know and I'll try to help you.
YoChoyLaMuete...
Good info about not using static models.
I never new there was a problem since I didn't have it set to developer 1.
Now I can see the errors just fly by in the console. :oops:
thejerk
11-02-2002, 09:48 PM
EDIT: Ops!! I almost forgot!! I think the errors only show up if you are using set developer 1 - most probably they are happening also with developer 0, but they are not reported.
Yeah, that's actually what I noticed with Algiers. I tried to run rcon commands but couldn't because developer was set to 1, but if you just type in "set developer 0" into the console (without rcon), then it will stop displaying it. But I'm sure it's still having the problems...
DogMeat
11-03-2002, 01:56 AM
What I found was that certain objects have been designed to be inserted dynamically, especially the vehicles and static weapons. These are the only ones you can insert using this method, a snip from the mohdm2 section of the DMz script:
[code:1]local.stuka_d = spawn models/vehicles/stuka_d.tik
local.stuka_d.origin = ( -2600 1430 340 )
local.stuka_d.angle = 90
local.stuka_d solid
local.stuka_d immune bullet
local.stuka_d immune fast_bullet
local.stuka_d immune bash
local.stuka_d immune explosion
if (level.dmz_mapvis_mohdm2 == 0)
local.stuka_d hide[/code:1]
All other objects either don't show up at all or show up at one fixed location when using this method. However the alternate method, as listed in the "spawn script_model" example, as YoChoy said gives off a ton of errors. Sure you can only see them in developer mode, but they are still happening even with developer off. It's also happening on your player's MoHAA engine, try turning developer mode on when connected to your server, you'll see the errors flying by. For me it wasn't worth it to cause several hundred errors a minute on the clientside, so I stick with vehicles/static weapons, leaving them visable or hiding them as needed.
One other thing to note, that is not to say all vehicles and static weapons work correctly, even when using the "safer" method. Please remember that map and script editting is geared towards developers who have access to all the source files, which includes the uncompiled map file. The map itself helps define and hold data about even "dynamic" objects, meaning the dynamic methods we are using is actually only part of what is needed to correctly implement serverside dynamic objects.
The upshot of this is a major problem with the clipping boundaries around certain objects. Note on the Bridge/Crossroads the extremely large invisible box around the motorcycle, that is the default clipping box and it'll stop players, bullets, grenades and rockets. Several vehicles have boxes that only stay in one orientation, for example if you have a tank set North to South it's bounding box may be fine, turn it East to West and the bounding box remains N-S, allowing players to hide inside the tank's model.
I still feel it is the author's responsibility to fix their own map's faults, however if people want to submit fixes I'll fold them into DMz. By submit fixes I mean actual model section with coords and angle, etc. Use my stuka code above as a template.
Druid
11-03-2002, 02:07 AM
Thanks for all the extra info DM.
It goes a long way in explaining some of the little problems I've ran across.
YoChoyLaMuete
11-03-2002, 07:56 AM
Hi DM!
Glad to see you again!! :D
thejerk
11-03-2002, 09:34 AM
I agree that it's the author's responsibility to repair their own mistakes, however... Waiting for some authors to fix their maps is like asking your town to fix pot holes - don't expect it to happen over night. What I mean is, it seems to me that some maps are put out by authors and then abandoned by them (I don't know that this is the case with Push City Hall, I'm speaking in a general sense).
In any event, I appreciate all of the information you've enlightened us with. It helps to explain a lot.
About submitting these fixes (if we're inclined to do so), perhaps you have an easy method for doing so? I wouldn't want to clutter up RD's forums with code that's only intended for your eyes.
:idea: Maybe you could write into DogTagz a bit of code that allows specifying maps and coords in need of such fixes so that you don't have to keep adding this stuff yourself. That is, having it set so that a user would specify in the config a line like so:
[code:1]set spawn_fix = obj/push_cityhall, 1, 1, 2405.12, -234.43, 145.23, 0, 90, 0[/code:1]
And this array would be parsed as such:
map, model (define a number of models that cause the least problems), visible (0 = not visible), coord1, coord2, coord3, angle1, angle2, angle3
I'm not sure how hard this would be, but it would definately make it easier on you so you wouldn't have to keep releasing DogTagz every time a group of maps are released. And, this also makes it easy for an admin to keep using a map without having to wait for someone to fix it (whether it's the author, or a generous person like yourself).
Just an idea. ;)
DogMeat
11-05-2002, 02:56 PM
Interesting idea, not sure I could implement all of it but at the least i can make the map fixes easy to update without having a whole new DMz release.
vBulletin® v3.7.4, Copyright ©2000-2008, Jelsoft Enterprises Ltd.