William T. Riker's imtrepid 7 replies

Please wait...

weidass

I don't spend enough time here

50 XP

9th March 2003

0 Uploads

20 Posts

0 Threads

#1 17 years ago

does anyone know what became of this ship? from what i have found, it doesnt look like its been released yet. is the release just being held back until atp3 arrives? any answers appreciated. :beer:




*The.Doctor

Trust me, I'm a Doctor

102,440 XP

25th November 2003

0 Uploads

9,964 Posts

0 Threads

#2 17 years ago

is that the one with the moving warp engines? i can't remember, if it is i think it is being held of for ATP3, it has something to do with moving ship parts i think.




Maxloef

USS Voyager

50 XP

6th January 2004

0 Uploads

137 Posts

0 Threads

#3 17 years ago

I'm itersested because i have atp3 it's included in Mpmp 2.0 and i would like to know how you can move parts like nacelles. If you have mpmp 2.0 and you look up the scripts and custom tech or someyhing like that you wil find a file caled atpnacelle.py ive bin reading it and it has somthing to do with moving parts of the ship here this is the text from the file

import App

import MissionLib

import loadspacehelper

from Custom.AdvancedTechnologies.Data.GUI import ATP_GUIUtils

FALSE=0

TRUE=1

DEBUG=TRUE

ET_MOVE_NACELLES=App.Mission_GetNextEventType()

ET_MOVE_NACELLES_END=App.Mission_GetNextEventType()

ET_DUMMY=App.Mission_GetNextEventType()

INITED=FALSE

WingsUp={}

pCountDownTimer={}

NodeList={}

def Initialise():

global WingsUp

global pCountDownTimer

global NodeList

WingsUp={}

pCountDownTimer={}

NodeList={}

def Terminate():

global WingsUp

global pCountDownTimer

global NodeList

WingsUp={}

pCountDownTimer={}

NodeList={}

def CreateShipWithMovingNacelles(pShip,sScriptName,pSet,sShipName,sLocation):

if not pShip:

return

pWarp=pShip.GetWarpEngineSubsystem()

if not pWarp:

print "Error in CreateShipWithMovingNacelles: No warp system defined"

pSet.RemoveObjectFromSet(pShip.GetName())

return

iChildren = pWarp.GetNumChildSubsystems()

nacellesbasic=[]

if (iChildren > 0):

for i in range(iChildren):

pChild = pWarp.GetChildSubsystem(i)

if pChild:

nacellesbasic.append(pChild)

if len(nacellesbasic)==0:

print "Error in CreateShipWithMovingNacelles: No warp system children defined"

pSet.RemoveObjectFromSet(pShip.GetName())

return

nacelles=[]

j=0

for i in nacellesbasic:

j=j+1

if DEBUG:

print "Creating ship :",sShipName+"_Nacelle_"+str(j)

pNacelle=loadspacehelper.CreateShip(sScriptName+"_Nacelle_"+str(j),pSet,sShipName+"_Nacelle_"+str(j),sLocation)

pShip.AttachObject(pNacelle)

pNacelle.SetTranslate(i.GetPositionTG())

pNacelle.EnableCollisionsWith(pShip, 0)

nacelles.append(pNacelle)

if not DEBUG:

pNacelle.SetTargetable(0)

for i in nacelles:

for j in nacelles:

i.EnableCollisionsWith(j, 0)

global WingsUp

WingsUp[pShip.GetObjID()]=FALSE

global NodeList

j=0

for i in nacelles:

NodeList[i.GetObjID()]=nacellesbasic[j].GetObjID(),1.0

j=j+1

#Add listeners for mutual explosions

global INITED

if not INITED:

App.g_kEventManager.AddBroadcastPythonFuncHandler(App.ET_TACTICAL_HULL_LEVEL_CHANGE,MissionLib.GetMission(),__name__ + ".HullLevelChange")

App.g_kEventManager.AddBroadcastPythonFuncHandler(App.ET_OBJECT_EXPLODING,MissionLib.GetMission(),__name__ + ".Explosion")

INITED=TRUE

if pShip.GetObjID()==Mission.GetPlayer().GetObjID():

ATP_GUIUtils.CreateStandardButton(ET_MOVE_NACELLES,__name__+".MoveNacelles","Helm","Move Nacelles",pShip)

print "Done setting up ship with nacelles"

return pShip

def Explosion(pMission,pEvent):

pShip=App.ShipClass_Cast(pEvent.GetDestination())

if not pShip:

return

if not WingsUp.has_key(pShip.GetObjID()):

return

pSet=App.g_kSetManager.GetSet(pShip.GetContainingSet().GetName())

pWarp=pShip.GetWarpEngineSubsystem()

if not pWarp:

return

global NodeList

j=0

while(pWarp!=None):

j=j+1

pWarp = App.ShipClass_GetObject(pSet,pShip.GetName()+"_Nacelle_"+str(j))

if pWarp:

#pShip.DetachObject(pWarp)

pWarp.RunDeathScript()

del NodeList[pWarp.GetObjID()]

global WingsUp

del WingsUp[pShip.GetObjID()]

if DEBUG:

print "Done destroying the nacelles for ",pShip.GetName()

def HullLevelChange(pMission,pEvent):

ID=pEvent.GetDestination().GetObjID()

if NodeList.has_key(ID):

if DEBUG:

print "Detecting damage on nacelle"

pSys=App.Subsystem_Cast(App.TGObject_GetTGObjectPtr(NodeList[ID][0]))

if not pSys:

return

pParent=pSys.GetParentShip()

if not pParent:

return

pWarp=App.ShipClass_Cast(App.TGObject_GetTGObjectPtr(ID))

if not pWarp:

return

x=pWarp.GetHull().GetConditionPercentage()

delta=NodeList[ID][1]-x

if delta<0.0:

delta=0.0

elif delta>1.0:

delta=1.0

pSys.SetConditionPercentage(x)

damage=delta*pWarp.GetHull().GetMaxCondition()

damage=pParent.GetHull().GetCondition()-damage

if damage<0.0:

pParent.RunDeathScript()

else:

pParent.GetHull().SetCondition(damage)

NodeList[ID]=NodeList[ID][0],x

def MoveNacelles(pMission,pEvent):

import math

global WingsUp

try:

ID=pEvent.GetInt()

except:

ID=MissionLib.GetPlayer().GetObjID()

pShip=App.ShipClass_Cast(App.TGObject_GetTGObjectPtr(ID))

v=App.TGPoint3()

v.SetX(0)

v.SetZ(0)

THETA=math.pi/4.0

TIME_TO_SET=3.0

j=0

pWarp=pShip

pSet=App.g_kSetManager.GetSet(pShip.GetContainingSet().GetName())

pShip.GetScript()+"_Nacelle_"+str(j)

#M=pShip.GetWorldRotationTG()

while(pWarp!=None):

j=j+1

pWarp = App.ShipClass_GetObject(pSet,pShip.GetName()+"_Nacelle_"+str(j))

if pWarp:

s=pShip.GetScript()+"_Nacelle_"+str(j)

pModule=__import__ (s)

try:

THETA=pModule.GetAngle()/180.0*math.pi

except:

print "Error in loading GetAngle()"

try:

TIME_TO_SET=pModule.GetTimeToSet()

except:

print "Error in loading GetTimeToSet()"

if WingsUp[ID]:

THETA=THETA*(-1.0)

if DEBUG:

print "Turning :",pWarp.GetName(), " and angle: ",THETA/math.pi*180.0

v.SetY(THETA/TIME_TO_SET)

pWarp.SetAngularVelocity(v,App.PhysicsObjectClass_Cast(pShip).DIRECTION_MODEL_SPACE)

if WingsUp[ID]:

if pShip.GetObjID()==MissionLib.GetPlayer().GetObjID():

ATP_GUIUtils.RemoveStandardButton("Helm","Reset Nacelles")

ATP_GUIUtils.CreateStandardButton(ET_DUMMY,__name__+".Dummy","Helm","Moving Nacelles",pShip)

else:

if pShip.GetObjID()==MissionLib.GetPlayer().GetObjID():

ATP_GUIUtils.RemoveStandardButton("Helm","Move Nacelles")

ATP_GUIUtils.CreateStandardButton(ET_DUMMY,__name__+".Dummy","Helm","Moving Nacelles",pShip)

global pCountDownTimer

pCountDownTimer[ID]=CreateIntTimer(ET_MOVE_NACELLES_END,__name__ +".MoveNacellesEnd",App.g_kUtopiaModule.GetGameTime()+TIME_TO_SET,1.0,-1.0,0,pShip)

def MoveNacellesEnd(pMission,pEvent):

try:

ID=pEvent.GetInt()

except:

ID=MissionLib.GetPlayer().GetObjID()

pShip=App.ShipClass_Cast(App.TGObject_GetTGObjectPtr(ID))

j=1

pWarp=pShip

pSet=App.g_kSetManager.GetSet(pShip.GetContainingSet().GetName())

v=App.TGPoint3()

v.SetXYZ(0,0,0)

while(pWarp!=None):

pWarp = App.ShipClass_GetObject(pSet,pShip.GetName()+"_Nacelle_"+str(j))

j=j+1

if pWarp:

pWarp.SetAngularVelocity(v,1.0)

global pCountDownTimer

if pCountDownTimer[ID]:

App.g_kTimerManager.DeleteTimer(pCountDownTimer[ID].GetObjID())

pCountDownTimer[ID]=None

MissionLib.GetMission().RemoveHandlerForInstance(ET_MOVE_NACELLES_END,__name__ +".MoveNacellesEnd")

if WingsUp[ID]:

WingsUp[ID]=FALSE

if pShip.GetObjID()==MissionLib.GetPlayer().GetObjID():

ATP_GUIUtils.RemoveStandardButton("Helm","Moving Nacelles")

ATP_GUIUtils.CreateStandardButton(ET_MOVE_NACELLES,__name__+".MoveNacelles","Helm","Move Nacelles",pShip)

else:

WingsUp[ID]=TRUE

if pShip.GetObjID()==MissionLib.GetPlayer().GetObjID():

ATP_GUIUtils.RemoveStandardButton("Helm","Moving Nacelles")

ATP_GUIUtils.CreateStandardButton(ET_MOVE_NACELLES,__name__+".MoveNacelles","Helm","Reset Nacelles",pShip)

def Dummy(pMission,pEvent):

if DEBUG:

print "We cannot abort the move now, sir"

def CreateIntTimer(eType, sFunctionHandler, fStart, fDelay, fDuration,bRealTime = 0,pShip=None):

"A simplified function for creating a script-based timer event."

# Setup the handler function.

pMission=MissionLib.GetMission()

pMission.AddPythonFuncHandlerForInstance( eType, sFunctionHandler )

# Create the event and the event timer.

pEvent = App.TGIntEvent_Create()

if pShip:

pEvent.SetInt(pShip.GetObjID())

else:

pEvent.SetInt(App.NULL_ID)

pEvent.SetEventType(eType)

pEvent.SetDestination(pMission)

pTimer = App.TGTimer_Create()

pTimer.SetTimerStart(fStart)

pTimer.SetDelay(fDelay)

pTimer.SetDuration(fDuration)

pTimer.SetEvent(pEvent)

if (bRealTime):

App.g_kRealtimeTimerManager.AddTimer(pTimer)

else:

App.g_kTimerManager.AddTimer(pTimer)

MissionLib.g_lMissionTimers.append(pTimer.GetObjID())

return pTimer




Jerm357

I don't spend enough time here

50 XP

15th January 2004

0 Uploads

771 Posts

0 Threads

#4 17 years ago

the ship should be released soon, there isnt an exact date but it will most likely be before ATP3 so it wont have the moving nacelles and that script is just to get it done the ship that does it isnt included




Jerm357

I don't spend enough time here

50 XP

15th January 2004

0 Uploads

771 Posts

0 Threads

#5 17 years ago

latest news flash it will most likely be released in 1-2 weeks we know continue with our normal broadcasting




tim_scott_2000

Sniper

50 XP

27th February 2003

0 Uploads

299 Posts

0 Threads

#6 17 years ago
I'm itersested because i have atp3 it's included in Mpmp 2.0 and i would like to know how you can move parts like nacelles. If you have mpmp 2.0 and you look up the scripts and custom tech or someyhing like that you wil find a file caled atpnacelle.py ive bin reading it and it has somthing to do with moving parts of the ship here this is the text from the file

no the as far as i know atp 3 from mpmp 2.0 doest have the right code for the necelles there are special links needid in the hp and atp for it to work you will need a newer version

scotty




Maxloef

USS Voyager

50 XP

6th January 2004

0 Uploads

137 Posts

0 Threads

#7 17 years ago

Oke




cpt_eagleeye

Captian of the USS Galaxy-B

50 XP

23rd February 2004

0 Uploads

43 Posts

0 Threads

#8 17 years ago

Cool can't wait for it's realase