Support Request: IC2 Teleporter, EU problem

  • I do not have a bug report form or report itself, so I'm just asking for support on this matter (even though I believe it to BE a bug). If this is misfiled, I apologize immediately and would like to be directed to the correct location. Thank you :).


    I've been trying to figure out why the EU cost of the Teleporter doesn't match the calculations given on the wiki. I've done a days worth of calculations and arrived at this conclusion: The Teleporter is bugged (I've been hearing this off and on through other topics and forums but have yet to see any specific thing pointing it out). I know how to fix it though! I just can't seem to find a way to compile from the .java to .class; it's quite infuriating. So here's the issue. Since I can't just make a custom mod for our server (waiting for the actual mod to be fixed), maybe someone else has a solution that I've not looked at.


    According to the Wiki, the calculation for player teleport is Distance * (1000 + Inventory + Armor) where Distance = sqrt( (dx)^2 + (dy)^2 + (dz)^2 ), Inventory = 100 * Current stack size) / Max stack size, and armor = 100/used slot. This is fine in concept but is not the case when used. I setup a simple testing area: Two TPs powered by MSFUs, the first at -177 289 66, the second at -151 294 66. Doing the math, we come out to 26.47640459 Distance. Assuming a completely naked person--no armor or items--we take the base 1000 for player TP, and no inventory costs. Putting this through the rest of the math: 26.47640459*1000 = 26,476 EU (dropping fractions as suggested on wiki). I fill TP #1 with 27,000 EU and try it: Nothing. I then leave it charging while I stand on it. As soon as it hits 60,825 EU--I TP as normal.


    Obviously, THAT isn't supposed to happen. I decompiled the server-side Transporter.class file to take a look at what could be malfunctioning and found that the variable passed to the power draw method is setup to inject a huge amount of extra power in there.



    As is outlined here, superfluous math is being done beyond the equation given on the wiki. As I see it, it takes "Player weight" (Inv+Armor+1000) and multiplies it by "Distance*10^0.6...96" and multiplies that by 5. As far as I can tell, this is not the way it is supposed to be. Simply replacing the definition of variable "j" with the following:


    Code
    int j = (int)((double)i * Math.floor(d));


    Should result in the exact function outlined on the wiki. So these details in mind, does anyone know if I am just looking at this wrong? Has anyone reported this issue before? I tried doing a search but couldn't find anything matching my results within the first two pages. If someone could give some insight on this issue, or suggest a possible fix, I'd be much appreciated. If permissible, and I don't know about this one, if someone could explain how I could just mod it for our server until an official release (if this is a bug) comes out, I'd be even more grateful. As an end note: I'm not trying to be a show off or start a fight or anything! I'm outlining the above to try and help my own issue while asking for help :(. Thank you for all your time! :)