you have the mass restrictions in the OP backwards from what the config file lists them for hyperspace and planetary operations.
and except for hyperspace jumps, I don't really seem to drain power, though the default 128 block limit and the small ship size I'm using may be part of that.
what is up with the air generation system? it seems buggy.
are you going to add a way to use more helmets that can be used for safe space exploration?
and are you going to put in a way for certain helmets to be able to prevent the nausea effect from jumping?
Thanx for the help on the chunk issue. That fixed the problem. with 1.3.6, if I jumped within the overworld, my ship would jump just fine. It would freeze when I went into space. Now on 1.3.7, when ever I jump, my client times out, but the server still runs. If I jump to tspace, both client and server freeze. I get an error on my server when I reload stating that there is a broken buildcraft pipe and if I removed an addon. My ship has just buildcraft and galacticraft pipes.
OH! Galacticraft oxygen bubble distributors don't work right after the jump. I have to break them and replace them. They appear as entities on my minimap. Could that be why?
EDIT. I loaded an older copy of my ship, minus the galacticraft oxygen bubble distributors and pipes. It went to hyperspace, space and warped around the overworld with no isues. I just cant leave hyperpace how
Looks like your computer is having hard time to sustain the load. Try to reduce the I:blocks_per_tick from 3500 to 1000 or something, in the warpdrive configuration. 3500 is good for dedicated servers.
Buildcraft won't recognize its own default pipes. You need to use an offline editor to remove those buggy pipes, or simply reset the corrupted chunk since your original ship is probably still there.
GC Oxygen pipes, collectors and distributors are a lag mess, so I never spent time trying to even warp them. We'll see how complicated is it to fix.
you have the mass restrictions in the OP backwards from what the config file lists them for hyperspace and planetary operations.
and except for hyperspace jumps, I don't really seem to drain power, though the default 128 block limit and the small ship size I'm using may be part of that.
what is up with the air generation system? it seems buggy.
are you going to add a way to use more helmets that can be used for safe space exploration?
and are you going to put in a way for certain helmets to be able to prevent the nausea effect from jumping?
Indeed, it was inverted, OP is updated now. That explain why players were confused with the configuration file values, thanks!
Power drain is computed from the ship mass (i.e. number of blocks excluding leaves and air/gases) and the distance. You can see the value in the default script main page.
"it seems buggy" isn't very specific, I can't really answer to that.
Items configuration are part of the upcoming changes, including breathing helmets and fall damage boots.
Preventing nausea effect works fine with a good old glass of milk. We'll see to give more options later on.
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
I tried adjusting the dimensions of my ship, I did find some discrepancies. I used blocks to measure everything out, there is no way my ship has the wrong dimensions now. I'm still getting snag errors. Do I need to upload a video or something to show you? Or is this a simple fix that I'm missing?
I tried adjusting the dimensions of my ship, I did find some discrepancies. I used blocks to measure everything out, there is no way my ship has the wrong dimensions now. I'm still getting snag errors. Do I need to upload a video or something to show you? Or is this a simple fix that I'm missing?
The guide should give you the snagging block coordinates. Did you check what's there? is it actually supposed to be outside the ship? is it exactly right outside the ship border?
Keep in mind, the dimensions are counted from the ship core at 0: first block out is 1. If you set a 1 1 1 / 1 1 1 ship, it's actually 3x3x3 blocks.
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
The Meaning of Life, the Universe, and Everything.
Join Date:
1/11/2014
Posts:
54
Member Details
I am running this on a dedicated server. 4gig hosted. For about 12 players, would you get more ram? I did put the block count to 2500 and I'm going to try it out.
the air will sometimes put the visual fx around your head and will cause you to do the walk FX even if flying in mid air.
plus the air doesn't want to stay in the area around the generator, it wants to appear and disappear, or looks like it does
and isn't the scuba helm + tanks supposed to prevent suffocation while consuming tanks? cause right now in 1.3.7 it doesn't.
edit: something I found that is funny. I can hang glide in space using the open blocks hang glider.
I also take it that gravity only gets affected if you have galacticraft installed as well as I was still falling "down" in space.
There's a bug where it periodically remove the air block around you, which cause this "air wall" effect around you.
The walk FX is a vanilla bug, can't do much about it.
The WarpDrive helmet works with WarpDrive tank. The IC2 scuba helmet should work with IC2 compressed air cells. Same as on 1.6.4.
OpenBlocks and ICBM are completly bypassing entity gravities, they will need special handler around there special handlers...
Galacticraft item gravity is fixed in next update. Players gravity is a bit more complicated, we'll see.
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
I am running this on a dedicated server. 4gig hosted. For about 12 players, would you get more ram? I did put the block count to 2500 and I'm going to try it out.
I did a few tests with Galacticraft and it's a bit crashy with oxygen pipes (CME).
Currently, jumping with an oxygen bubble distributor will cause memory leaks due to bad coding in GC side of things, it'll eventually corrupt your game.
It's patched in next WarpDrive version but I would advise against jumping with those blocks for now.
Please post your logs after enabling JUMP and PROFILER logs, to confirm where's the lag coming from.
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
forgive me for my lack of knowledge with this, but how do I enable logs? and where would I find them?
Logs are enabled in the mods configuration file => config/WarpDrive/warpdrive.cfg
Server logs are in the logs folder => logs/latest.log
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
I am still having issues getting the lasers to work. There is abeam being fired from the correct laser. The function does not wait until the laser has fired, however. It just repeatedly returns the same values. Something to note, though, is that whenever I fire a laser the Reactor Lasers go crazy, repeatedly firing and causing the micro-explosions (what exactly do those DO, anyways?) even though the computer attached to them did not have a program running on it. I would also like to confirm weather the Vector3 value that is supposed to be returned is coordinates of the block that was hit, or the unit vector for the direction of the laser.
function WaitForLaser()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
while true do
sleep(0.1)
if (MainLaser ~= nil) then
local lx, ly, lz, id, meta, res = MainLaser.getFirstHit()
if (res ~= -1) then
print("Hit: "..lx..","..ly..","..lz)
--FireOtherLasers(lx,ly,lz)
end
else
print("MainLaser Is Nil")
end
end
end
I was using IC2 Scuba helm+IC2 Compressed air cells. Will try again with none NEI obtained compressed air cells.
Only the WarpDrive helmet is working in current version. IC2 helmets are being worked on.
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
I am still having issues getting the lasers to work. There is abeam being fired from the correct laser. The function does not wait until the laser has fired, however. It just repeatedly returns the same values. Something to note, though, is that whenever I fire a laser the Reactor Lasers go crazy, repeatedly firing and causing the micro-explosions (what exactly do those DO, anyways?) even though the computer attached to them did not have a program running on it. I would also like to confirm weather the Vector3 value that is supposed to be returned is coordinates of the block that was hit, or the unit vector for the direction of the laser.
function WaitForLaser()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
while true do
sleep(0.1)
if (MainLaser ~= nil) then
local lx, ly, lz, id, meta, res = MainLaser.getFirstHit()
if (res ~= -1) then
print("Hit: "..lx..","..ly..","..lz)
--FireOtherLasers(lx,ly,lz)
end
else
print("MainLaser Is Nil")
end
end
end
As it is implemented currently, getFirstHit() gives you the coordinates of the closest block, along with it's id and metadata. At that point of time, the beam was already shot and rendered at client side (minus network latency). If you keep the fire key pressed, laser will shoot again right away; chances are the laser medium didn't reload yet and you'll have a fairly short beam.
Reactor lasers explosion happens when artefact health is low and there's good chance it'll explode shortly. Artefact health decrease whenever a laser is shoot, and restore naturally over time. In other words, if your controller shoots too frequently (typically when stabilisation energy is too low), artefact won't heal fast enough. There's currently no API to measure the artefact 'health'.
In your case, this could happen if you're using the same computer to control the reactor and the laser or some scripts which 'sleep' for too long without processing events. In that case, the artefact instability builds up and controller is having an hard time to restore it.
What frequencies did you set in your setup?
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
In my setup i had the camera frequency of the monitor and laser chosen randomly between 1 and 10000. The reactor computer and the computer controlling the lasers that I am trying to get working are different, and the reactor lasers only flip out when i fire a damage laser. The lasers are connected to the computer using wired modems and network cable, the monitor is on the left. I plan to implement targeted and boosting lasers in this script.
This is the entire script:
(Please ignore the GUI code)
local LogFile = "DebugLog"
local MonBase = "warpdriveMonitor"
local Laserbase = "warpdriveLaser"
local Monitor = peripheral.wrap("left")
local Freq = math.random(1,10000)
local Data = {
MainLaserID = 3
}
local Lasers = {}
local slc = 1
function FindPeriphreal(Name)
for i=0,10000 do
local periph = peripheral.wrap(Name.."_"..i)
if (periph) then return periph end
end
return nil
end
function getLasers()
local names = peripheral.getNames()
for i=1,#names do
local ptype = peripheral.getType(names[i])
if (ptype == Laserbase) then Lasers[names[i]] = peripheral.wrap(names[i]) end
end
end
getLasers()
--print(#Lasers.." Lasers Detected")
for i,p in pairs(Lasers) do
print(i)
end
function UpdateLaser()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
if (MainLaser ~= nil) then
Monitor.freq(Freq)
MainLaser.freq(45000)
MainLaser.camFreq(Freq)
else
print("MainLaser Is Nil")
os.sleep(1)
end
end
function FireOtherLasers()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
local lx, ly, lz = MainLaser.pos()
for i,l in pairs(Lasers) do
if (i ~= Laserbase.."_"..Data.MainLaserID) then
print("Firing: "..i)
--- Calc Coords
local myX, myY, myZ = l.pos()
local dx = myX-lx
local dy = myY-ly
local dz = myZ-lz
print(dx)
print(dy)
print(dz)
l.freq(45000)
l.emitBeam(dx, dy, -dz)
end
end
sleep(0.05)
end
-----------------------------------------------------------------------------------------GUI CODE
function TranslateText(Text, Size)
local Len = string.len(Text)
for i=1,(math.floor(Size-Len)) do
Text = Text.." "
end
return Text
end
local Screens = {
---Main Menu
[1] = {
{
Settings = {Offset = {1,1}, BorderBColor = colors.yellow, BorderTColor = colors.black, BorderText = " ",},
---Functions Menu
{Type = "TextLabel", DispFunc = function() return {Text = " Functions ", TextCol = colors.black, BackCol = colors.yellow} end, Position = {1,1}},
{Type = "Button", DispFunc = function() return {Text = " Set Main Laser ", TextCol = colors.black, BackCol = colors.green} end, Function = function() end, Position = {1,2}, Active = true},
},
{
Settings = {Offset = {1,10}, BorderBColor = colors.yellow, BorderTColor = colors.black, BorderText = " ",},
---Functions Menu
{Type = "TextLabel", DispFunc = function() return {Text = " Data ", TextCol = colors.black, BackCol = colors.yellow} end, Position = {1,1}},
},
},
}
function DrawScreen()
term.setBackgroundColor(colors.black)
term.clear()
local Screen = Screens[slc]
for _,Menu in pairs(Screen) do
for i,p in pairs(Menu) do
if (p.Type ~= nil) then
if (p.Type == "TextLabel") then
--TextLabel
local DispInfo = p.DispFunc()
term.setCursorPos((p.Position[1]-1)+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
term.setCursorPos((p.Position[1]+string.len(DispInfo.Text))+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
---
term.setCursorPos(p.Position[1]+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(DispInfo.TextCol)
term.setBackgroundColor(DispInfo.BackCol)
print(DispInfo.Text)
elseif (p.Type == "Button") then
----Button
local DispInfo = p.DispFunc()
term.setCursorPos((p.Position[1]-1)+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
term.setCursorPos((p.Position[1]+string.len(DispInfo.Text))+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
---
term.setCursorPos(p.Position[1]+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(DispInfo.TextCol)
term.setBackgroundColor(DispInfo.BackCol)
print(DispInfo.Text)
end
end
end
end
end
function CheckClick(x,y)
local Screen = Screens[slc]
for _,Menu in pairs(Screen) do
for i,p in pairs(Menu) do
if (p.Type ~= nil) then
if (p.Type == "Button") then
---Button
local DispInfo = p.DispFunc()
if (y == p.Position[2]+Menu.Settings.Offset[2]) and (x >= p.Position[1]+Menu.Settings.Offset[1]) and (x <= (p.Position[1] + (string.len(DispInfo.Text)-1))+Menu.Settings.Offset[1]) then
p.Function()
end
---
end
end
end
end
end
function ScreenClicks()
local event, button, x, y = os.pullEvent("mouse_click")
CheckClick(x,y)
end
-----------------------------------------------------------------------------------------
function SaveData()
local file = fs.open("LCData", "w")
local str = textutils.serialize(Data)
if str~="{}" then
file.writeLine(str)
end
file.close()
end
function ReadData()
local file = fs.open("LCRData", "r")
Data = textutils.unserialize(file.readAll())
file.close()
end
if (fs.exists("LCRData")) then
ReadData()
else
SaveData()
end
function dlog(data)
file = fs.open(LogFile,fs.exists(LogFile) and "a" or "w")
file.writeLine(data)
file.close()
end
function Main1()
while true do
os.sleep(0.5)
DrawScreen()
UpdateLaser()
end
end
function Main2()
while true do
ScreenClicks()
--SaveData()
DrawScreen()
end
end
function WaitForLaser()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
while true do
sleep(0.1)
if (MainLaser ~= nil) then
local lx, ly, lz, id, meta, res = MainLaser.getFirstHit()
if (res ~= -1) then
print("Hit: "..lx..","..ly..","..lz)
--FireOtherLasers(lx,ly,lz)
end
else
print("MainLaser Is Nil")
end
end
end
UpdateLaser()
--FireOtherLasers()
--parallel.waitForAll(WaitForLaser)
WaitForLaser()
In my setup i had the camera frequency of the monitor and laser chosen randomly between 1 and 10000. The reactor computer and the computer controlling the lasers that I am trying to get working are different, and the reactor lasers only flip out when i fire a damage laser. The lasers are connected to the computer using wired modems and network cable, the monitor is on the left. I plan to implement targeted and boosting lasers in this script.
This is the entire script:
(Please ignore the GUI code)
local LogFile = "DebugLog"
local MonBase = "warpdriveMonitor"
local Laserbase = "warpdriveLaser"
local Monitor = peripheral.wrap("left")
local Freq = math.random(1,10000)
local Data = {
MainLaserID = 3
}
local Lasers = {}
local slc = 1
function FindPeriphreal(Name)
for i=0,10000 do
local periph = peripheral.wrap(Name.."_"..i)
if (periph) then return periph end
end
return nil
end
function getLasers()
local names = peripheral.getNames()
for i=1,#names do
local ptype = peripheral.getType(names[i])
if (ptype == Laserbase) then Lasers[names[i]] = peripheral.wrap(names[i]) end
end
end
getLasers()
--print(#Lasers.." Lasers Detected")
for i,p in pairs(Lasers) do
print(i)
end
function UpdateLaser()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
if (MainLaser ~= nil) then
Monitor.freq(Freq)
MainLaser.freq(45000)
MainLaser.camFreq(Freq)
else
print("MainLaser Is Nil")
os.sleep(1)
end
end
function FireOtherLasers()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
local lx, ly, lz = MainLaser.pos()
for i,l in pairs(Lasers) do
if (i ~= Laserbase.."_"..Data.MainLaserID) then
print("Firing: "..i)
--- Calc Coords
local myX, myY, myZ = l.pos()
local dx = myX-lx
local dy = myY-ly
local dz = myZ-lz
print(dx)
print(dy)
print(dz)
l.freq(45000)
l.emitBeam(dx, dy, -dz)
end
end
sleep(0.05)
end
-----------------------------------------------------------------------------------------GUI CODE
function TranslateText(Text, Size)
local Len = string.len(Text)
for i=1,(math.floor(Size-Len)) do
Text = Text.." "
end
return Text
end
local Screens = {
---Main Menu
[1] = {
{
Settings = {Offset = {1,1}, BorderBColor = colors.yellow, BorderTColor = colors.black, BorderText = " ",},
---Functions Menu
{Type = "TextLabel", DispFunc = function() return {Text = " Functions ", TextCol = colors.black, BackCol = colors.yellow} end, Position = {1,1}},
{Type = "Button", DispFunc = function() return {Text = " Set Main Laser ", TextCol = colors.black, BackCol = colors.green} end, Function = function() end, Position = {1,2}, Active = true},
},
{
Settings = {Offset = {1,10}, BorderBColor = colors.yellow, BorderTColor = colors.black, BorderText = " ",},
---Functions Menu
{Type = "TextLabel", DispFunc = function() return {Text = " Data ", TextCol = colors.black, BackCol = colors.yellow} end, Position = {1,1}},
},
},
}
function DrawScreen()
term.setBackgroundColor(colors.black)
term.clear()
local Screen = Screens[slc]
for _,Menu in pairs(Screen) do
for i,p in pairs(Menu) do
if (p.Type ~= nil) then
if (p.Type == "TextLabel") then
--TextLabel
local DispInfo = p.DispFunc()
term.setCursorPos((p.Position[1]-1)+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
term.setCursorPos((p.Position[1]+string.len(DispInfo.Text))+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
---
term.setCursorPos(p.Position[1]+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(DispInfo.TextCol)
term.setBackgroundColor(DispInfo.BackCol)
print(DispInfo.Text)
elseif (p.Type == "Button") then
----Button
local DispInfo = p.DispFunc()
term.setCursorPos((p.Position[1]-1)+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
term.setCursorPos((p.Position[1]+string.len(DispInfo.Text))+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(Menu.Settings.BorderTColor)
term.setBackgroundColor(Menu.Settings.BorderBColor)
print(Menu.Settings.BorderText)
---
term.setCursorPos(p.Position[1]+Menu.Settings.Offset[1], p.Position[2]+Menu.Settings.Offset[2])
term.setTextColor(DispInfo.TextCol)
term.setBackgroundColor(DispInfo.BackCol)
print(DispInfo.Text)
end
end
end
end
end
function CheckClick(x,y)
local Screen = Screens[slc]
for _,Menu in pairs(Screen) do
for i,p in pairs(Menu) do
if (p.Type ~= nil) then
if (p.Type == "Button") then
---Button
local DispInfo = p.DispFunc()
if (y == p.Position[2]+Menu.Settings.Offset[2]) and (x >= p.Position[1]+Menu.Settings.Offset[1]) and (x <= (p.Position[1] + (string.len(DispInfo.Text)-1))+Menu.Settings.Offset[1]) then
p.Function()
end
---
end
end
end
end
end
function ScreenClicks()
local event, button, x, y = os.pullEvent("mouse_click")
CheckClick(x,y)
end
-----------------------------------------------------------------------------------------
function SaveData()
local file = fs.open("LCData", "w")
local str = textutils.serialize(Data)
if str~="{}" then
file.writeLine(str)
end
file.close()
end
function ReadData()
local file = fs.open("LCRData", "r")
Data = textutils.unserialize(file.readAll())
file.close()
end
if (fs.exists("LCRData")) then
ReadData()
else
SaveData()
end
function dlog(data)
file = fs.open(LogFile,fs.exists(LogFile) and "a" or "w")
file.writeLine(data)
file.close()
end
function Main1()
while true do
os.sleep(0.5)
DrawScreen()
UpdateLaser()
end
end
function Main2()
while true do
ScreenClicks()
--SaveData()
DrawScreen()
end
end
function WaitForLaser()
local MainLaser = Lasers[Laserbase.."_"..Data.MainLaserID]
while true do
sleep(0.1)
if (MainLaser ~= nil) then
local lx, ly, lz, id, meta, res = MainLaser.getFirstHit()
if (res ~= -1) then
print("Hit: "..lx..","..ly..","..lz)
--FireOtherLasers(lx,ly,lz)
end
else
print("MainLaser Is Nil")
end
end
end
UpdateLaser()
--FireOtherLasers()
--parallel.waitForAll(WaitForLaser)
WaitForLaser()
I don't see your issue in my test map which includesreactor running non stop on a dedicated computer, 2 lasers boosting a main laser triggered by a scanning laser, and a bunch of ships. The whole setup is floating in the middle of 3 asteroid fields.
When I shoot with my scanner directly, or using the boosters + main, I've no issue observed on the reactor. So, it's not reproduced for me.
Can you confirm all your computers are using different ids? when doing CC in creative, after picking up a computer, you end up placing the same computer with the same ID multiple times.
Can you try adding a Sleep(0.050) when getFirstHit() returns something?
Does the reactor laser still blows up if you shutdown the weapon computer and just shoot the scanner laser?
Rollback Post to RevisionRollBack
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGamesArcania craft.
I just updated to the latest warpdrive build and the issue with the reactor lasers has stopped, but i am still having the issue with getFirstHit(). Could you please send me your test world, so I can try to figure out what I am doing wrong?
you have the mass restrictions in the OP backwards from what the config file lists them for hyperspace and planetary operations.
and except for hyperspace jumps, I don't really seem to drain power, though the default 128 block limit and the small ship size I'm using may be part of that.
what is up with the air generation system? it seems buggy.
are you going to add a way to use more helmets that can be used for safe space exploration?
and are you going to put in a way for certain helmets to be able to prevent the nausea effect from jumping?
Looks like your computer is having hard time to sustain the load. Try to reduce the I:blocks_per_tick from 3500 to 1000 or something, in the warpdrive configuration. 3500 is good for dedicated servers.
Buildcraft won't recognize its own default pipes. You need to use an offline editor to remove those buggy pipes, or simply reset the corrupted chunk since your original ship is probably still there.
GC Oxygen pipes, collectors and distributors are a lag mess, so I never spent time trying to even warp them. We'll see how complicated is it to fix.
What do you mean by can't leave hyperspace?
Excellent! thanks for sharing the results!
Indeed, it was inverted, OP is updated now. That explain why players were confused with the configuration file values, thanks!
Power drain is computed from the ship mass (i.e. number of blocks excluding leaves and air/gases) and the distance. You can see the value in the default script main page.
"it seems buggy" isn't very specific, I can't really answer to that.
Items configuration are part of the upcoming changes, including breathing helmets and fall damage boots.
Preventing nausea effect works fine with a good old glass of milk. We'll see to give more options later on.
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
I tried adjusting the dimensions of my ship, I did find some discrepancies. I used blocks to measure everything out, there is no way my ship has the wrong dimensions now. I'm still getting snag errors. Do I need to upload a video or something to show you? Or is this a simple fix that I'm missing?
Sorry about that, the script IS working correctly though. I just forgot to set it from hyperspace back to normal jump, but at least i found a bug.
The guide should give you the snagging block coordinates. Did you check what's there? is it actually supposed to be outside the ship? is it exactly right outside the ship border?
Keep in mind, the dimensions are counted from the ship core at 0: first block out is 1. If you set a 1 1 1 / 1 1 1 ship, it's actually 3x3x3 blocks.
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
the air will sometimes put the visual fx around your head and will cause you to do the walk FX even if flying in mid air.
plus the air doesn't want to stay in the area around the generator, it wants to appear and disappear, or looks like it does
and isn't the scuba helm + tanks supposed to prevent suffocation while consuming tanks? cause right now in 1.3.7 it doesn't.
edit: something I found that is funny. I can hang glide in space using the open blocks hang glider.
I also take it that gravity only gets affected if you have galacticraft installed as well as I was still falling "down" in space.
I am running this on a dedicated server. 4gig hosted. For about 12 players, would you get more ram? I did put the block count to 2500 and I'm going to try it out.
There's a bug where it periodically remove the air block around you, which cause this "air wall" effect around you.
The walk FX is a vanilla bug, can't do much about it.
The WarpDrive helmet works with WarpDrive tank. The IC2 scuba helmet should work with IC2 compressed air cells. Same as on 1.6.4.
OpenBlocks and ICBM are completly bypassing entity gravities, they will need special handler around there special handlers...
Galacticraft item gravity is fixed in next update. Players gravity is a bit more complicated, we'll see.
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
I did a few tests with Galacticraft and it's a bit crashy with oxygen pipes (CME).
Currently, jumping with an oxygen bubble distributor will cause memory leaks due to bad coding in GC side of things, it'll eventually corrupt your game.
It's patched in next WarpDrive version but I would advise against jumping with those blocks for now.
Please post your logs after enabling JUMP and PROFILER logs, to confirm where's the lag coming from.
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
forgive me for my lack of knowledge with this, but how do I enable logs? and where would I find them?
Logs are enabled in the mods configuration file => config/WarpDrive/warpdrive.cfg
Server logs are in the logs folder => logs/latest.log
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
I was using IC2 Scuba helm+IC2 Compressed air cells. Will try again with none NEI obtained compressed air cells.
I am still having issues getting the lasers to work. There is abeam being fired from the correct laser. The function does not wait until the laser has fired, however. It just repeatedly returns the same values. Something to note, though, is that whenever I fire a laser the Reactor Lasers go crazy, repeatedly firing and causing the micro-explosions (what exactly do those DO, anyways?) even though the computer attached to them did not have a program running on it. I would also like to confirm weather the Vector3 value that is supposed to be returned is coordinates of the block that was hit, or the unit vector for the direction of the laser.
Only the WarpDrive helmet is working in current version. IC2 helmets are being worked on.
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
As it is implemented currently, getFirstHit() gives you the coordinates of the closest block, along with it's id and metadata. At that point of time, the beam was already shot and rendered at client side (minus network latency). If you keep the fire key pressed, laser will shoot again right away; chances are the laser medium didn't reload yet and you'll have a fairly short beam.
Reactor lasers explosion happens when artefact health is low and there's good chance it'll explode shortly. Artefact health decrease whenever a laser is shoot, and restore naturally over time. In other words, if your controller shoots too frequently (typically when stabilisation energy is too low), artefact won't heal fast enough. There's currently no API to measure the artefact 'health'.
In your case, this could happen if you're using the same computer to control the reactor and the laser or some scripts which 'sleep' for too long without processing events. In that case, the artefact instability builds up and controller is having an hard time to restore it.
What frequencies did you set in your setup?
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
In my setup i had the camera frequency of the monitor and laser chosen randomly between 1 and 10000. The reactor computer and the computer controlling the lasers that I am trying to get working are different, and the reactor lasers only flip out when i fire a damage laser. The lasers are connected to the computer using wired modems and network cable, the monitor is on the left. I plan to implement targeted and boosting lasers in this script.
This is the entire script:
(Please ignore the GUI code)
I don't see your issue in my test map which includesreactor running non stop on a dedicated computer, 2 lasers boosting a main laser triggered by a scanning laser, and a bunch of ships. The whole setup is floating in the middle of 3 asteroid fields.
When I shoot with my scanner directly, or using the boosters + main, I've no issue observed on the reactor. So, it's not reproduced for me.
Can you confirm all your computers are using different ids? when doing CC in creative, after picking up a computer, you end up placing the same computer with the same ID multiple times.
Can you try adding a Sleep(0.050) when getFirstHit() returns something?
Does the reactor laser still blows up if you shutdown the weapon computer and just shoot the scanner laser?
Come visit us on WorldWarMinecraft series, now with space fights! Modpack is available here. Only 1GB RAM required! Lots of fun and no lag!
Visit our Voltz PvP/raid server at pvp.worldwarminecraft.net:25555 .
Join the PvE survival challenge on FunSquareGames Arcania craft.
Is the Enan reactor compatible with OpenComputers? When I try to start a computer with it connected to it, it sends me a BSOD with:
"Unrecoverable Error
dan200/computercraft/api/peripheral/IComputerAccess"
Is there any way I can look at more than just that? Any logs, anything of that matter?
try the OC debug tool, and I think there are debug options in the OC config file.
I just updated to the latest warpdrive build and the issue with the reactor lasers has stopped, but i am still having the issue with getFirstHit(). Could you please send me your test world, so I can try to figure out what I am doing wrong?