Eddie's Transporter Zones Server
Moderator: Z-Man
Eddie's Transporter Zones Server
I got to tinkering with sty+ct again. Trying to learn php oop, creating classes so a zone becomes an object that can be used in different ways.
The first was a transporter zone. This is either set to transport you to the opposite side of the zone (so the zone becomes a vortex through space and time) , or the other side of a sister zone, which will in turn transport you back if you so desire.
It could be used it set up a multiple zone transporter. ie zone1 -> zone2 -> zone3 ->zone1. Moving zones should also work with limitations. But I don't do anything that confusing here.
I try to keep it simple, but it took me a while to get my head around where I was going to end up each time I entered a zone. But I promise you there are no tricks here and they all seem to work as they should.
I would recommend the 0.3 client as it seems to handle the player being killed and respawned quicker than 0.2.8. Plus the minimap is very helpful.
It's a last man standing type of server.
The map looks like this, but of course this doesn't show the sixteen zones used to move around the arena.
It aint great and hopefully camping will be frowned upon and not done too often.
I really put little thought into the map as it built itself, I was trying to build something quite different, I just helped it along. I can think of some flaws, but hopefully it will be a lot of fun (albiet for a short time) and we'll see if my transporterZone classes can handle 12 players jumping around the grid :S
The first was a transporter zone. This is either set to transport you to the opposite side of the zone (so the zone becomes a vortex through space and time) , or the other side of a sister zone, which will in turn transport you back if you so desire.
It could be used it set up a multiple zone transporter. ie zone1 -> zone2 -> zone3 ->zone1. Moving zones should also work with limitations. But I don't do anything that confusing here.
I try to keep it simple, but it took me a while to get my head around where I was going to end up each time I entered a zone. But I promise you there are no tricks here and they all seem to work as they should.
I would recommend the 0.3 client as it seems to handle the player being killed and respawned quicker than 0.2.8. Plus the minimap is very helpful.
It's a last man standing type of server.
The map looks like this, but of course this doesn't show the sixteen zones used to move around the arena.
It aint great and hopefully camping will be frowned upon and not done too often.
I really put little thought into the map as it built itself, I was trying to build something quite different, I just helped it along. I can think of some flaws, but hopefully it will be a lot of fun (albiet for a short time) and we'll see if my transporterZone classes can handle 12 players jumping around the grid :S
- DDMJ
- Reverse Outside Corner Grinder
- Posts: 1882
- Joined: Thu Jun 08, 2006 12:15 am
- Location: LA, CA, USA, NA
- Contact:
Re: Eddie's Transporter Zones Server
I've never been more confused in my entire life!...but I love it . The map definitely needs some work though. The zones in the X are basically death zones since you transport then are literally in front of a wall.
Re: Eddie's Transporter Zones Server
Not if you enter it at the correct placeDDMJ wrote:The zones in the X are basically death zones since you transport then are literally in front of a wall.
You can either:
a: pass straight though the zone to the other side
b: transport inside the X, wiggle along and then exit at another of the X zones.
c: smash into a wall as you did
Re: Eddie's Transporter Zones Server
Nifty. Had it bug out once and it kept transporting me back and forth between two zones. Couldn't replicate it though. Also took a while to figure out how to change from north,south to east,west. Once i did, it was obvious what i was doing wrong.
Re: Eddie's Transporter Zones Server
Same thing happened to me at about 16:52 GMT today (I yelled "BUG!").Your_mom wrote:Had it bug out once and it kept transporting me back and forth between two zones.
Otherwise an awesome server!
- -=VcL.Rajinn
- Round Winner
- Posts: 242
- Joined: Fri Aug 29, 2008 9:35 pm
Re: Eddie's Transporter Zones Server
When I played in the server with path, my client almost crashed.
It was probably just because Pathetique was in the server at the time, but you should still check up on that
It was probably just because Pathetique was in the server at the time, but you should still check up on that
Re: Eddie's Transporter Zones Server
Yes. I have seen this also. Let me explain why it is happening. Hopefully someone with better maths skill than me can help me. I'm sure it'll involve the use of tan, sin or cos somewhere, but I left them behind in school long ago.Your_mom wrote:Had it bug out once and it kept transporting me back and forth between two zones.
Attached is an image of a basic transporter zone that will respawn the player out the other side of the zone.
He enters the zone at point A, we want to respawn him at point B.
When the player enters the zone the server will write to the log file something like
Code: Select all
TARGETZONE_PLAYER_ENTER westnorthzone eddie -14 10 1 0
The respawn point for this example, if coordinates of the zone where 0, 0 would be cordinates 14, 10
In an ideal world, this would be fine, the the server doesn't always send the correct coordinates, it can be slow sometimes. so -14, 10 may actually have been -15, 10 so the script respawns at 14, 10 and the player is in turn spawned inside the zone. Have a two way transporter zone relationship going on, once it starts you will get transported between two zones for all eternity.
I have tried adding 3 metres to the respawn x coordinate (for this case), this helps but still get the problem and it makes the transortations look untidy and, dare I say, a bit hacky.
Now to solve this, I would like to be able to check whether the respawn point is inside the exit zone. If it is compensate for it.
I know the zone's radius and coordinates. I just need to check the x and y cordinates before the cycle is respawned.
Any help appreciated.
I'm hoping other bugs are related to this. But this is a big one that needs fixing.
-
Re: Eddie's Transporter Zones Server
How about you teleport only if the cycle is moving towards the zone center? That should avoid the double teleport, because after the first teleport, you'd be moving away from the center.
Re: Eddie's Transporter Zones Server
Great solution Thanks.
It is now in place and it appears to have fixed it.
I have also made the zones slightly larger so transporting between north->east, east->south, etc isn't quite so fiddly.
Any more bugs spotted, please let me know.
It is now in place and it appears to have fixed it.
I have also made the zones slightly larger so transporting between north->east, east->south, etc isn't quite so fiddly.
Any more bugs spotted, please let me know.
Re: Eddie's Transporter Zones Server
Edit: Nevermind...
Re: Eddie's Transporter Zones Server
very nice ed
using 0.2.8beta, everytime I get teleported I have to switch camera again
is that gonna be fixed?
using 0.2.8beta, everytime I get teleported I have to switch camera again
is that gonna be fixed?
Re: Eddie's Transporter Zones Server
Dunno. The switch back to your default camera mode when you respawn is explicitly coded there, so it looks like it has some purpose. I'll have do dig into SVN history to check whether it predates respawning support. If it does, it probably just was a safety net for the beginning of round camera initialization, in case the player's game object gets known to the client late.
Re: Eddie's Transporter Zones Server
aha well, nevermind XD
I didn't realize until now that there was a default camera setting
I didn't realize until now that there was a default camera setting
Re: Eddie's Transporter Zones Server
Nice server eddy. You did it again.
I just had an idea. Let's see if i can present it coherently.
By adding these teleport zones you basically create surfaces which are not topologically equivalent to a plane/sphere. And the nice thing about these surfaces is that you can draw non-planar graphs on them (see attached image). However, doing this is not completely trivial, and it requires quite a bit of thinking even when drawing it with a pencil. So I imagine doing it with a lightcycle tail would be quite a challenging(*).
It would be interesting to make a map resembling the image (with appropriate settings. say infinite tail, reasonable speed, perhaps a bit more axes) and let the user try to draw K_5. If it turns out to be playable we could expand on that and create a sort of a single-player campaign (woot): start with a planar graph and no teleports, and gradually add more teleports and more complex graphs. A script would monitor the users progress and advance to the next level when he completes the puzzle.
So... what do you think? could this work?
* there's a catch.... not every graph that's embeddable on the surface of the given type (in the graph theory sense) can be drawn in arma. It needs to have an eulerian path, so you can't really draw a K_{3,3}. One could work around that by allowing multiple edges between two vertices. Even then, I'm not sure it is sufficient, because graph theory doesn't have problems with intersections that occur in the vertices of the graph, but arma does. But that's a long way away right now...
I just had an idea. Let's see if i can present it coherently.
By adding these teleport zones you basically create surfaces which are not topologically equivalent to a plane/sphere. And the nice thing about these surfaces is that you can draw non-planar graphs on them (see attached image). However, doing this is not completely trivial, and it requires quite a bit of thinking even when drawing it with a pencil. So I imagine doing it with a lightcycle tail would be quite a challenging(*).
It would be interesting to make a map resembling the image (with appropriate settings. say infinite tail, reasonable speed, perhaps a bit more axes) and let the user try to draw K_5. If it turns out to be playable we could expand on that and create a sort of a single-player campaign (woot): start with a planar graph and no teleports, and gradually add more teleports and more complex graphs. A script would monitor the users progress and advance to the next level when he completes the puzzle.
So... what do you think? could this work?
* there's a catch.... not every graph that's embeddable on the surface of the given type (in the graph theory sense) can be drawn in arma. It needs to have an eulerian path, so you can't really draw a K_{3,3}. One could work around that by allowing multiple edges between two vertices. Even then, I'm not sure it is sufficient, because graph theory doesn't have problems with intersections that occur in the vertices of the graph, but arma does. But that's a long way away right now...
Re: Eddie's Transporter Zones Server
A single player mission based puzzle/skill game was my initial plan when I started on this server. Transporter zones were the first step, once I'd got them reasonably working I thought this server would be at least a good way to test them. And I ran out of free time.pavelo wrote:If it turns out to be playable we could expand on that and create a sort of a single-player campaign (woot): start with a planar graph and no teleports, and gradually add more teleports and more complex graphs. A script would monitor the users progress and advance to the next level when he completes the puzzle.
So... what do you think? could this work?
It turned out to be a lot of fun, for a while anyway. Played a good few matches there with several people yesterday, it was very funny and appears to be working as intended. I think there is potential there.
Switch zones will be next where you enter a zone which will have influence on other zones, perhaps change the transportation destination of a transporter zone, spawn new zones, collapse death zones, start/stop a zone that is moving. Many possibilities. Give me controllable bots
To be honest, I don't fully understand the K_5, K_{3,3} idea. It's some type of graph? http://en.wikipedia.org/wiki/Planar_graph it contained lots of long words that I didn't understand