Level Builders needed for...
Re: Level Builders needed for...
If you make the cubes into reactor cubes missiles won't spawn in them.
-
JinX
- Posts: 26
- Joined: Wed Oct 02, 2013 6:18 pm
That's correct, but there are two problems with that approach.
1 - If you put too many reactor cubes in a level, it doesn't work. I don't really know why. All I know is that after flagging 50 or so cubes as reactor cubes, loading the level results the game not being able to render anything. These obs areas are 100-200 cubes.
2- I just learned this from studying the source today . . . reactor cubes protect, not just themselves, from spawns, but all their neighbor cubes, too. If I made the entire observatory area out of reactor cubes, nothing would be able to spawn in the lower level. Well, not in any of the cubes touching the observatory. Which would probably trigger the "give up and spawn anywhere" mode a lot more often.
That second one suggests that by placing the reactor cubes VERY CAREFULLY, I can protect the obs area with minimal impact on the level below, but it's going to take some thoughtful design work.
Even if I improve the design in that way, there is still a small chance the algorithm will randomly fail. If half the cubes in the level are obs area, there is a 50% chance of the algorithm picking an invalid cube in any given attempt. It makes about 10 attempts before giving up and choosing a random cube, so each shot should have about a 0.1% chance of ending up in the obs area no matter what I do. That seems acceptable to me, though it does imply I should design missile returns into these things.
-----------
I did figure out the glitchy doors. Both of the doors we've had problems with are wall 0, and the problem is triggered by opening the (one-sided) door to the observatory area. Apparently, if you open a door with no other side, Descent also opens door 0 . . . and then forgets to close it.
For the one-sided door to work, wall 0 does have to be a door. Making it one of the glass walls makes Descent complain, "You cannot open this door". So I think what I'm going to do is move wall 0 to a cube outside the level. I'll have to sacrifice more reactor room ceiling in nysa to get walls for it, but . . . ah well. Don't fly there, I guess.
1 - If you put too many reactor cubes in a level, it doesn't work. I don't really know why. All I know is that after flagging 50 or so cubes as reactor cubes, loading the level results the game not being able to render anything. These obs areas are 100-200 cubes.
2- I just learned this from studying the source today . . . reactor cubes protect, not just themselves, from spawns, but all their neighbor cubes, too. If I made the entire observatory area out of reactor cubes, nothing would be able to spawn in the lower level. Well, not in any of the cubes touching the observatory. Which would probably trigger the "give up and spawn anywhere" mode a lot more often.
That second one suggests that by placing the reactor cubes VERY CAREFULLY, I can protect the obs area with minimal impact on the level below, but it's going to take some thoughtful design work.
Even if I improve the design in that way, there is still a small chance the algorithm will randomly fail. If half the cubes in the level are obs area, there is a 50% chance of the algorithm picking an invalid cube in any given attempt. It makes about 10 attempts before giving up and choosing a random cube, so each shot should have about a 0.1% chance of ending up in the obs area no matter what I do. That seems acceptable to me, though it does imply I should design missile returns into these things.
-----------
I did figure out the glitchy doors. Both of the doors we've had problems with are wall 0, and the problem is triggered by opening the (one-sided) door to the observatory area. Apparently, if you open a door with no other side, Descent also opens door 0 . . . and then forgets to close it.
For the one-sided door to work, wall 0 does have to be a door. Making it one of the glass walls makes Descent complain, "You cannot open this door". So I think what I'm going to do is move wall 0 to a cube outside the level. I'll have to sacrifice more reactor room ceiling in nysa to get walls for it, but . . . ah well. Don't fly there, I guess.
-
Drakona
- Site Admin
- Posts: 1494
- Joined: Fri Aug 30, 2013 5:35 pm
Ok, Take2 is ready for rerelease: http://www.enspiar.com/dmdb/viewMission.php?id=823
The glitchy door is fixed, I've carefully moved the reactor cubes around to protect the observatory area better and affect the lower level less, and I've added a "missile return" to the top. Fire missiles at the exit to return them to play.
I tested the respawn performance of the improved Take2 Obs in Retro 1.2. 0/100 missiles fired in the base level spawned in the observatory. 8/20 fired directly into the missile return spawned into the observatory, though, so if one does get up there, you may have to "return" it a couple times before it takes. These numbers can be expected to change for the worse with another player in the observatory, though.
I was able to improve this with a minor change to the missile spawning algorithm: I made it try a little harder to avoid cubes adjacent to reactor cubes before giving up. The change shouldn't affect missile spawning in a normal level -- it only even comes into play when there are so many cubes adjacent to reactor cubes that the algorithm has a hard time finding one that ISN'T. That should only ever come up in an observatory.
Anyway, it's an experimental and optional upgrade. The level seems to work without it, but it will probably work better with it. I ran the same test in 1.2.3, and got 0/100 missiles fired from the main level and 0/20 missiles fired into the missile return spawning in the obs area.
https://dl.dropboxusercontent.com/u/146 ... -1.2.3.exe
I think the improved Take2 should be playable for a serious game now, even with Retro 1.2 (or base Rebirth, which follows the same algorithm). Consider upgrading to 1.2.3 if you find the respawns to be annoying, though.
[Edit: Forgot to mention -- 1.2.3 is compatible with all the 1.2.x versions. Differences in the third digit are compatible with each other in general. ]
The glitchy door is fixed, I've carefully moved the reactor cubes around to protect the observatory area better and affect the lower level less, and I've added a "missile return" to the top. Fire missiles at the exit to return them to play.
I tested the respawn performance of the improved Take2 Obs in Retro 1.2. 0/100 missiles fired in the base level spawned in the observatory. 8/20 fired directly into the missile return spawned into the observatory, though, so if one does get up there, you may have to "return" it a couple times before it takes. These numbers can be expected to change for the worse with another player in the observatory, though.
I was able to improve this with a minor change to the missile spawning algorithm: I made it try a little harder to avoid cubes adjacent to reactor cubes before giving up. The change shouldn't affect missile spawning in a normal level -- it only even comes into play when there are so many cubes adjacent to reactor cubes that the algorithm has a hard time finding one that ISN'T. That should only ever come up in an observatory.
Anyway, it's an experimental and optional upgrade. The level seems to work without it, but it will probably work better with it. I ran the same test in 1.2.3, and got 0/100 missiles fired from the main level and 0/20 missiles fired into the missile return spawning in the obs area.
https://dl.dropboxusercontent.com/u/146 ... -1.2.3.exe
I think the improved Take2 should be playable for a serious game now, even with Retro 1.2 (or base Rebirth, which follows the same algorithm). Consider upgrading to 1.2.3 if you find the respawns to be annoying, though.
[Edit: Forgot to mention -- 1.2.3 is compatible with all the 1.2.x versions. Differences in the third digit are compatible with each other in general. ]
-
Drakona
- Site Admin
- Posts: 1494
- Joined: Fri Aug 30, 2013 5:35 pm
Re-released Nysa and Fuzed as well with missile returns.
We've never had a problem with Logic, but I'll take a look at that one, too.
We've never had a problem with Logic, but I'll take a look at that one, too.
-
Drakona
- Site Admin
- Posts: 1494
- Joined: Fri Aug 30, 2013 5:35 pm
Logic has been brought up to spec.
None of these levels have been combat tested -- I've just done solo tests. I'm pretty sure they'll work well, and I know they'll work better than they did before (which was almost good enough!) . . . but the spawning algorithm is sensitive to where all the ships are, so I'm anxious to see the results. I want to watch some good games in these!
For your convenience, here's the set.
Logic: http://www.enspiar.com/dmdb/viewMission.php?id=783
Ugh: http://www.enspiar.com/dmdb/viewMission.php?id=820
Nysa: http://www.enspiar.com/dmdb/viewMission.php?id=821
Fuzed: http://www.enspiar.com/dmdb/viewMission.php?id=822
Take2: http://www.enspiar.com/dmdb/viewMission.php?id=823
None of these levels have been combat tested -- I've just done solo tests. I'm pretty sure they'll work well, and I know they'll work better than they did before (which was almost good enough!) . . . but the spawning algorithm is sensitive to where all the ships are, so I'm anxious to see the results. I want to watch some good games in these!
For your convenience, here's the set.
Logic: http://www.enspiar.com/dmdb/viewMission.php?id=783
Ugh: http://www.enspiar.com/dmdb/viewMission.php?id=820
Nysa: http://www.enspiar.com/dmdb/viewMission.php?id=821
Fuzed: http://www.enspiar.com/dmdb/viewMission.php?id=822
Take2: http://www.enspiar.com/dmdb/viewMission.php?id=823
-
Drakona
- Site Admin
- Posts: 1494
- Joined: Fri Aug 30, 2013 5:35 pm
Just gave Take2 a live test -- Bahamut vs. Jedi with me on obs. We all used Retro 1.2.3, and not a single missile spawned in the obs area. And the door glitch is gone! Looks ready for ladder matches for real this time.
-
Drakona
- Site Admin
- Posts: 1494
- Joined: Fri Aug 30, 2013 5:35 pm
What is this 1.2.3 you speak of? I only see 1.2 available.
-
Ryguy
- Posts: 122
- Joined: Wed Sep 04, 2013 8:26 pm