Teleporters + Frames do not work

  • As i am not familiar with all the code of the teleporter, i have no idea how much work this would be, but here is my "problem":


    i have a flying mining machine, 6-way-frame-engine, some IC2-miners and MV-Solarpanels from CompactSolars Addon.
    Now i want to have a small teleport-system between my base and my miner, so i can teleport both ways.
    From my miner to my base works perfect, now that 1.97 fixed that broken EnergyNet-thingy...
    But i can't teleport from my Base to my miner, if it was moved after linking the teleporters (yes, i did connect them in both ways, works perfect before moving with frames).


    my understanding of the teleporters is, as soon as they are connected, they know the coordinates of their counterpart and check if it is still there when you try to teleport.
    I could imagine the Teleporters to work similiar to the TeleportPipes from Buildcraft, or Wireless Redstone with an ID-system.
    You put both Teleporters down, open the gui and set them to the same frequency. maybe an option if it is a "send-only" or a "arrive-only" teleporter (i could think of some uses for that).
    I am not sure if it should be like teleport pipes where every player has his own 10k IDs or like wireless Redstone where all 10k frequencies are shared among all players (smp)... would it be possible to make this an option in the server cfg?


    well.. the whole rework would be the sugar on top, but i'd really love to have teleporters still work after the arrival station has been moved by frames

    • Official Post

    You are right, it should be much better, than just storing the direct Coordinates.


    Why not adding all the Teleporters to a List (i guess Frames are not destroying the Pointer/Adress of the Block), and then just go by the Listindex, to choose the Teleporter to connect.

  • shouldn't this go in support?

    true balance is impossible in video games the best one can hope for is to make it really hard to guess which of 2 choices are better.
    and remember kids "NEVER UNDERESTIMATE THE POWER OF JOKES!"

  • but all fixes are improvements aren't they?

    true balance is impossible in video games the best one can hope for is to make it really hard to guess which of 2 choices are better.
    and remember kids "NEVER UNDERESTIMATE THE POWER OF JOKES!"

    • Official Post

    but all fixes are improvements aren't they?

    Yes they are, but to fix things they must be broken before (Except you are Nikola Tesla, because he fixes things which aren't broken :D), and if Mod-X (Redpower) breaks something, than is it not the direct responsibility of Industrialcraft (even if its IC²s fault), and so you have to suggest more Crossmodcompatiblity, in this case for Frames.

  • well, i put it into suggestion, because i am not just saying "doesn't work", but i also give a "suggestion" how the teleporter could be (imho) improved to match my needs
    if i had written "teleporter + frames do not work, plx helps me", it would have gone to support ;)

  • TE objects shoud have onUpdate() method that can be called if something want TE object to update itself, this will allow frames and any other modadded ability to move anything work properly.

  • TE objects in current implementation can be moved only with black magic, this have side effects if object bound to its location and have no code to handle position change.


    And thats exactly why i was suggesting that such "anti-black-magic"-code should be implemented to prevent the teleporter being harmed by foul magic... or frames... or stuff like that... :P


    There are some mods that can move blocks (also TEs): RedPower (Frames), ZeppelinMod (Makes whole structures an flying Entity), PortalMod (PortalGun can move blocks)
    Probably even some more

    • Official Post


    And thats exactly why i was suggesting that such "anti-black-magic"-code should be implemented to prevent the teleporter being harmed by foul magic... or frames... or stuff like that... :P


    There are some mods that can move blocks (also TEs): RedPower (Frames), ZeppelinMod (Makes whole structures an flying Entity), PortalMod (PortalGun can move blocks)
    Probably even some more

    Even Thaumcraft can do similar things with the Portable Hole (since 2.1.6d)

  • no matter how many mods can do this, it's skill black magic, also link to moving teleporter stored inside remote teleporter, to allow both platform to moove freely some code modifications are requred.

  • no matter how many mods can do this, it's skill black magic, also link to moving teleporter stored inside remote teleporter, to allow both platform to moove freely some code modifications are requred.


    We are talking about a computer program here? Your saying your going to have to modify the code to change the way it works?

    This would be a good addition to IC2. Perhaps have each teleporter get assigned an ID (like maps) stored in the damage value (or meta data I guess) that allows them to be addressed by an ID instead of a co-ordinate. So when you step on a teleportation table thingy it does a lookup on the ID of it's "partner" teleporter and gets the co-ordinates. Might still work weirdly if the frame was moving when you teleport.

  • Slight displace on the move is not a problem. Teleporters tied to other one should remember target id, not coords. Targeting to some coords can be other mode for Teleporter.


    ThaumCraft can be a problem with it's Portable Holes as it moves to unknown place. Where would you be teleported to?


    It would quite fun to teleport on the PortalGun tip :D

  • it's Portable Holes as it moves to unknown place. Where would you be teleported to?

    and again: i dont have any clue how it works, but i guess you couldn't teleport to an portalgunned teleporter or one that is moving in the same moment by frames, as these get converted into some kind of dummy block (at least that how i would have solved it), which contain all block data, but ain't the block itself... and for thaumcraft i guess the hole temporarely removes them while having them stored (im form of data and not as a block somewhere)

  • So I can guess in the table of all Teleporters only last known coords can be found. It seems check for presence of this Teleporter at these coords needed. Or pick/place events.

  • well, to kinda "bump" this thread, i got another idea how this could be realised, probably way easier to implement, but a little less userfriendly i guess:
    when using an unused frequency transmitter on a unlinked teleporter, the teleporter gets an unique ID, which is saved in the transmitter, as well as the last known position. when linking the second teleporter, those data get saved in the second teleporter (duh). and each time you use this teleporter, it will first check if the target teleporter is still at the last known coords (saving same cpu power), else it has to search for the teleporter with the matching ID... ID could be saved as meta-data ("damage value") i guess