1. Please be advised of a few specific rules and guidelines for this section.

Outdated [Outdated] Planetside Teleporters 2.11

Configurable teleporters for warping from place to place on a planet or ship.

  1. iraham

    iraham Scruffy Nerf-Herder

    Well Vaeux, let me know what type of motivation it would take. We love the teleporter capability on our server, it works amazingly well.

    An update would make everyone's day.
     
  2. morfindeth

    morfindeth Scruffy Nerf-Herder

    I, for one, love this mod. The ability to build a base anywhere and be able to port to it from your planet spawn point is a godsend. One of the best additions to the game there is. I would love to see an update.
     
  3. Vaeux

    Vaeux Big Damn Hero

    When it comes to modding, I'm mainly intrinsically motivated, though I appreciate the enthusiasm.

    Anyway, thinking about the mod again reminded me of some of the changes I had in mind, which has me tempted to do some more programming. It probably won't come as quickly as desired, but I might end up breaking backwards compatibility, so it'd be for the best.

    That's good. I wasn't entirely sure the player differentiation would work right. I'm pretty sure I can tighten up the timing on the use delay and cooldown without causing any problems, so it'll feel a little less "slow" than it probably did sometimes.
     
  4. petecis

    petecis Scruffy Nerf-Herder


    Hey, no problem. You clearly indicated it was a proof of concept and there were no guarantees that you were going to do anything more with it.

    With that said, still, I would like to thank you for spending the time to make something so great. Really, it is really nice. I only got into Starbound less than 2 months ago. Got it as a gift. My son and I play with a few of our friends regularly now. Finding and using your mod was one of the most exciting things we have done in the game. My son and I, as well as one of my friends setup different houses on the same world and put teleporters in to go visit each other's houses. It was a blast. We also used them as fast and each dungeon returns. We actually felt lost when they stopped working in Furious Koala.

    Myself and a buddy have been playing with the mod a little bit to get it working on Furious Koala. First, there were a few very minor issues to work out related to conversions from strings to other types and vice versa. Those were simple.

    We were seeing that itemDesc being returned from takeItemDrop() was always nil.

    Next, what took numerous hours was trying to figure out why things were not working. A LOT of the time was spent understanding the Starbound API's because we have never worked on our own Starbound mods before.


    Finally, a breakthrough... My buddy found this other mod that explained our problems exxactly:
    http://community.playstarbound.com/index.php?resources/hole-drills.588/update&update=4123

    Basically it says that takeItemDrop is broken in Furious Koala.

    So, basically we went about working around not being able to use takeItemDrop. I will admit the result was a bastardization of your original implementation, but we did get something working. What is done now is that when you hit the 'F' key you spawn a teleporter pad and the teleporter pad is programmed with the current position of where it is when it is spawned. Then you have to bring that teleporter someplace and drop it down. It is not an elegant solution. There's no reprogram ability for the teleporter. you have to toss it and put down a new one, but at least it works in the absense of a working takeItemDrop function.

    Basically the vaeux_teleporter.lua init() function was modified to assign the coordinates when the item is created.

    I did notice one funky behavior in the vaeux_teleporter.lua main() function. Whenever a copy coords causes the teleporter pad to spawn a tele coords card, the code inside the for loop gets hit 10 times meaining there are 10 ipairs where the entityName is "vaeux_telecoords". 9 of those result in an itemDesc that is nil. One of them result in an itemDesc that is a table. However, all elements in that table are nil so you dont really get anywhere.

    What you see for observed behavior is that if you are not very close to the teleporter pad when you hit the G key, the teleporter pad will actually suck up the tele coords card that it just spawned. You need to make sure you are close enough to the teleporter pad such that your toon gets to suck the card up first.

    I don't know how it worked prior to Furious Koala and I dont know of any way to install an older version of Starbound to find out. But anyway, one thing I put in that for loop was a check for itemDesc being nil. That makes processing only happen when itemDesc is actually a table. However, that just skips all the mess of trying to use a nil. The other issue is looking for some way to make it so that porter that spawned the tele coords card does not try to process the card it just spawned. I was thinking of adding something like a new config to the spawnItem() call inside copyCoords() to store the ID of the porter pad that spawned the tele coords card. Then the porter pad could check the ID and if it was the one who spawned it, then it would stop any further processing. But, I stopped looking at that because we now have another way to do things while takeItemDrop is broken and I have no idea whether I'm just chasing down a red herring that wouldnt be happening if Starbound didnt have a bug.

    So, in summary,
    - we got rid of spawning any tele coord cards to avoid takeItemDrop() bug
    - G key doesnt to anything anymore
    - F key spawns a teleporter pad
    - Teleporter pad initialized itself with the current coordinates of where it is when it is created.

    Finally, a couple questions that have been rolling around in my mind that I'm not experienced enough to figure out on my own right now....
    First, I would love to understand more about needing to use a projectile to accomplish client/server communications. Seems like you're packing up the necessary data into it. What I don't understand, is at a high level it seems like you're just hitting Q to drop an item and the porter pad is picking it up and reading it's coordinate property. From my, very inexperienced, point of view, I am wondering why you couldn't just add a property to any old item, hit Q to drop it and have the porter work the same way? I think there is something important here that I'm not experienced enough to understand.

    Next, it seems to me that the only reason to have to use the tech is to have access to the F and G keybindings. Could the spawnCoords() functionality be accomplished through a standard crafting recipe that created the object and initialized using it's current coords upon creation? Again, here, I wonder if my inexperience is not allowing me to understand some intricacies that are involved in the problems at hand.

    Again, thanks so much for this mod. I never again want to live without a planetside teleporter. If you could find it in your heart to help me muddle through my lack of understanding of the more complex parts of this mod I would sincerely appreciate it.
     
  5. Vaeux

    Vaeux Big Damn Hero

    Thanks. I wasn't really expecting people to get so attached to it, having released it so close to the wipe, but it seems I underestimated.

    Ooh, that's certainly going to save me some trouble. Funnily enough, I intend to stop using takeItemDrop, but I would've inevitably struggled for a while trying to figure out why it wasn't working right. Looks like takeItemDrop isn't actually broken, though, but was simply changed to use properly named table elements; Holedrill got an update to start using the new names.

    Some funky stuff seems to happen when querying items in an area with items in the process of being taken. These "ghost items" end up getting ignored.

    This basically only happens if you're standing right on top of/next to the teleporter, since it's item consumption range is quite short. The only consequence is requiring you to hit G again, so I didn't really worry about it.

    Unfortunately, takeItemDrop is the only way to check the custom config of an item drop... and it eats the item in the process.

    Multiple projectiles, since the only useful data you can convey through one seems to be position. The main reason we're stuck using a tech is because it's the only way to move a player around. The client/server communication is necessary for the (server-side) teleporter to communicate with the (client-side) tech. Normally, you'd use callScriptedEntity to easily pass data between entities, but a tech isn't a callable entity, and when a tech uses callScriptedEntity, you get a nil return value, because client-to-server calls are done asynchronously. Thus, the only way to get any data from the server into the tech is to create something the tech can "observe". I used projectiles because they were the first thing to come to mind, but other things can (and have) been used.

    If you're not in a rush, I ended up deciding to work on an update after all. I intend to make some changes that will break old coords items, and maybe old teleporters too, but it should be an improvement. I can't say for sure how long it will take, though; what exists now took a couple days, but my development rate is... unpredictable.
     
  6. petecis

    petecis Scruffy Nerf-Herder

    Thanks for all the info. That's good news. I'm not at all concerned about broken old porters or tech items. I'll make sure we delete all the old tech items and teleporters, etc prior to removing the old mod and popping in the new one.

    Totally understand about time. There's never enough to go around. Will wait patiently, but with bated breath, to see what you come up with :)
     
  7. WolfBane

    WolfBane Phantasmal Quasar

  8. Vaeux

    Vaeux Big Damn Hero

    The update is coming along nicely, though not quite as fast as I had hoped. The major stuff is finished and working, but there's still little things to wrap up. I might be able to get it done tonight.

    For anyone already using a version tweaked for Furious Koala, coordinate items will definitely break (it's simply not practical to convert them to the new system), teleporters should convert properly (unless I messed something up), and the teleporter tech isn't changing in any major way. Be advised that teleporters will become planet-specific, and prevent teleporting if they're on the wrong planet; the planet a teleporter is on when it's converted is the one it will be locked to, so try to avoid moving teleporters to places they don't belong. It'll still be possible to intentionally create abnormal coordinates, but accidental coordinate misuse should be basically eliminated.

    Also, the this mod's old mod folder (if you even have it) will have to be deleted before installing the update, but don't delete it before the update is ready.
     
    Last edited: Feb 1, 2014
    WolfBane likes this.
  9. WolfBane

    WolfBane Phantasmal Quasar

    So are you implying that we need to delete the entire mod folder once this comes out for it to work, or just the old version of this mod? It seems kind of odd to have to delete the whole folder.
     
  10. iraham

    iraham Scruffy Nerf-Herder

    Is there any chance to make a teleporter that will teleport you to another planet?

    Maybe not specific coordinates on another planet, but can move you just to the landing area of another planet?
    I'd love to have transwarp teleporting. :)
     
  11. Vaeux

    Vaeux Big Damn Hero

    The folder for this mod, if you happen to have it. I should probably edit that to make it clearer...

    Not yet. The API is still pretty limited, and additions seem to be coming slowly (we're supposed to get proper API documentation "soonish"), but this seems like something we should be able to do at some point. Hopefully.
     
  12. Vaeux

    Vaeux Big Damn Hero

    With version 2.00 on the way, I'd like to address the potential problems that can show up for anyone already using some version of Planetside Teleporters tweaked to work on Furious Koala.

    If Planetside Teleporters are being added by some other mod, you'll need to delete them, or the game will fail to start. This may involve deleting a "vaeux_teleporters" folder inside your mods folder, or it may involve deleting folders/files starting with "vaeux_" from the folders of other mods. Exploration Enhanced, for example, directly includes the "vaeux_" folders inside its own, and these will have to be deleted. I'm not entirely sure how many other mods included Planetside Teleporters, but I'll try and find them to post about the update in their threads.

    In the process of upgrading to the new version, all existing Teleporter Coordinates items will break (no clean way to convert them), existing teleporters should convert (their coordinates will be locked to the planet they're on, as per the new system), and nothing will change with the tech. I can't actually guarantee that teleporters will convert properly... but it doesn't seem like they were working in other mods anyway, so this shouldn't be a big deal.

    Sorry for the wait, by the way. I ran into some issues, and ended up spending more time than anticipated just making sure everything was actually working. At least, I'm pretty sure it's all working. We'll see.
     
  13. Vaeux

    Vaeux Big Damn Hero

    Vaeux updated [Proof of Concept] Planetside Teleporters with a new update entry:

    Furious Koala Update (v2.00)

    Read the rest of this update entry...
     
  14. Dizzle Dazzle

    Dizzle Dazzle Tentacle Wrangler

    Thank you so much for updating this wonderful mod! My friends and I absolutely love love love it!
     
  15. iraham

    iraham Scruffy Nerf-Herder

    Woohoo!
     
  16. Omekk

    Omekk Pangalactic Porcupine

    How does one get this tech? Do you need the Tabula Rasa mod?
     
  17. WolfBane

    WolfBane Phantasmal Quasar

    At the moment I believe all you simply need to do is craft the teleporter crafting table. It'll be in there.
     
    Omekk likes this.
  18. Vaeux

    Vaeux Big Damn Hero

    Vaeux updated Planetside Teleporters with a new update entry:

    v2.01 Update

    Read the rest of this update entry...
     
  19. Omekk

    Omekk Pangalactic Porcupine

    So, like an idiot I tried to make a teleporter on my ship and then tried to connect it to one on a planet... Unfortunately this didn't work and so I came back to this mod thread and realized that I couldn't make them work in that way... at this point I destroyed the teleporters and when my friend came aboard my ship she couldn't teleport down ot the surface any longer... When she did from my ship it would crash her and I don't know if it was cause of this mod or something else. Any idea?
     
  20. Xentor Antarix

    Xentor Antarix Ketchup Robot

    Hmm cool mod but somehow it makes me a problem.
    When I do this F thingi, to get the coords item, my gameserver freezes.
    O better the scriptprocessing (of all, gets delayed down to several minutes reactiontime)
    And returns notmore to normal. (Till serverrestart)
     

Share This Page