Important notice for all renegade mapmakers [message #485888] |
Sun, 09 February 2014 15:04 |
|
It is VERY important that you run "object - check IDs" in leveledit and if any ID collisions are found, run "object - fix ID collisions" or otherwise renumber objects until there are no collisions left.
If your map runs fine in 1-player LAN but crashes the client when you load it on a server, this could well be the cause.
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
|
|
|
Re: Important notice for all renegade mapmakers [message #485914 is a reply to message #485888] |
Mon, 10 February 2014 04:46 |
|
The next scripts release will contain code to detect the duplicate-id issue (i.e. any time there are 2 objects with the same netcode ID) and give an error message/exit the game rather than just crashing or failing in weird ways.
That way people will know to fix their maps (or if its not their map, to go talk to whoever made it and get it fixed)
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
|
|
|
|
|
|
|
Re: Important notice for all renegade mapmakers [message #485974 is a reply to message #485888] |
Tue, 11 February 2014 14:03 |
|
It will only warn about ID collisions that actually affect the netcode, i.e. when 2 objects that send network data have the same network ID.
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
|
|
|
Re: Important notice for all renegade mapmakers [message #485981 is a reply to message #485888] |
Tue, 11 February 2014 15:00 |
|
Gen_Blacky
Messages: 3250 Registered: September 2006
Karma: 1
|
General (3 Stars) |
|
|
Most maps shouldn't have id collisions. I thought leveledit was good at managing that by auto setting different ids?
Not a common problem I have seen.
Jerad Gray wrote on Tue, 11 February 2014 12:51 | It should be an option in the servers config to ignore the ID issues and attempt to run with them, I know there are a lot of ID collisions that can have no impact on the game what so ever. For example terrain ID collisions don't seem to cause any issues with the net code (at least if its just collisions with other terrain objects).
Waypoints also can be fine if they have collisions, as long as the object they collide with has a lower importance.
|
[Updated on: Tue, 11 February 2014 15:05] Report message to a moderator
|
|
|
Re: Important notice for all renegade mapmakers [message #485983 is a reply to message #485888] |
Tue, 11 February 2014 15:15 |
|
The way it works is that anytime a network object is created/loaded by the game it basically says "if there is already a network object with the same id, print a message and end the game"
all items under "buildings" and "objects" have network objects, as do doors, elevators and certain other things under tiles (dont have the code handy right now to check which ones)
Terrain and waypaths dont have network objects so they wont be passing through this code.
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
|
|
|
Re: Important notice for all renegade mapmakers [message #485987 is a reply to message #485981] |
Tue, 11 February 2014 16:11 |
|
Jerad2142
Messages: 3812 Registered: July 2006 Location: USA
Karma: 6
|
General (3 Stars) |
|
|
Gen_Blacky wrote on Tue, 11 February 2014 15:00 | Most maps shouldn't have id collisions. I thought leveledit was good at managing that by auto setting different ids?
Not a common problem I have seen.
Jerad Gray wrote on Tue, 11 February 2014 12:51 | It should be an option in the servers config to ignore the ID issues and attempt to run with them, I know there are a lot of ID collisions that can have no impact on the game what so ever. For example terrain ID collisions don't seem to cause any issues with the net code (at least if its just collisions with other terrain objects).
Waypoints also can be fine if they have collisions, as long as the object they collide with has a lower importance.
|
|
There is a setting that allows you to set the start of the ID range, I haven't pinned down how far this range extends exactly however I have been able to pin down that when you delete objects off the map LE doesn't try to recycle the freed ID's by default. Instead, it continue to increment the ID from what it was last at, if you switch computers or reinstall LE the ID range will reset to what it was originally at, if you forget to bump it up it will allow you to place duplicate ID's all over the place.
ECW is up to 600000 for the main map now, and I completely forgot to bump it back up when I moved to my new computer, I started placing the new terrain, did a check ID and had over 400 ID conflicts.
Visit Jerad's deer sweat shop
|
|
|
Re: Important notice for all renegade mapmakers [message #486002 is a reply to message #485987] |
Wed, 12 February 2014 01:17 |
|
Gen_Blacky
Messages: 3250 Registered: September 2006
Karma: 1
|
General (3 Stars) |
|
|
Jerad Gray wrote on Tue, 11 February 2014 12:51 |
There is a setting that allows you to set the start of the ID range, I haven't pinned down how far this range extends exactly however I have been able to pin down that when you delete objects off the map LE doesn't try to recycle the freed ID's by default. Instead, it continue to increment the ID from what it was last at
|
Yea I have noticed that. Every new object gets auto incremented from the id it was last at. That's why I think it's odd anyone would ever have much trouble.
Quote: | if you switch computers or reinstall LE the ID range will reset to what it was originally at, if you forget to bump it up it will allow you to place duplicate ID's all over the place.
|
Really I have never noticed that and I have been using mod packages back from 2004 and reinstalled on several computers.
Quote: | ECW is up to 600000 for the main map now, and I completely forgot to bump it back up when I moved to my new computer, I started placing the new terrain, did a check ID and had over 400 ID conflicts.
|
That sounds like a horror story. When you have huge amount of presets and objects on a map like ecw and forget about the ids I can see how you would run into trouble.
I bet a simple tool could be made to fix that problem. At least I hope so for your sake.
[Updated on: Wed, 12 February 2014 01:18] Report message to a moderator
|
|
|
|
|
Re: Important notice for all renegade mapmakers [message #486112 is a reply to message #486107] |
Fri, 14 February 2014 13:39 |
|
Jerad2142
Messages: 3812 Registered: July 2006 Location: USA
Karma: 6
|
General (3 Stars) |
|
|
danpaul88 wrote on Fri, 14 February 2014 12:32 | If you use the Check IDs option it'll tell you what the collisions are (if any) and leave it up to you to sort them out by hand.
There are other options that automatically go around fixing them, but Check IDs on its own won't.
|
Indeed, but when it returns 200+ id collisions I usually just say fuck it and undo whatever it is that I did to cause it (usually place a new chunk of terrain before setting the id setting back up to where it should be).
Visit Jerad's deer sweat shop
|
|
|