Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Maki

Pages: [1] 2 3 ... 20
1
General discussion / Re: Who's excited to mod FFXV?
« on: 2018-02-18 15:21:57 »
Yeah, XV is going to be extremely easy to mod due to the fact on how's it built. It has visual scripting, node based properties and you can freely edit the levels as they are just as in every other game engine. Cameras, actions are also not hardcoded, so everything is grabbed directly from files. That means a dedicated modder may be able to easily total convert the game to completely different genre. Unfortunately, file structures are ZLIB'bed + custom structure based on nodes, so we would need official modding tools for that.

2
Quest unpacked, names:

Code: [Select]
entities_.benchmark_demo.nodes_.[1]
entities_.benchmark_demo.nodes_.[3]
entities_.benchmark_demo.nodes_.[4]
entities_.benchmark_demo.nodes_.[5]
entities_.benchmark_demo.nodes_.[6]
entities_.benchmark_demo.nodes_.[7]
entities_.benchmark_demo.nodes_.[9]
entities_.benchmark_demo.nodes_.[11]
entities_.benchmark_demo.nodes_.[12]
entities_.benchmark_demo.nodes_.[13]
entities_.benchmark_demo.nodes_.[16]
entities_.benchmark_demo.nodes_.[18]
entities_.benchmark_demo.nodes_.[19]
entities_.benchmark_demo.nodes_.[20]
entities_.benchmark_demo.nodes_.[21]
entities_.benchmark_demo.nodes_.[22]
entities_.benchmark_demo.nodes_.[23]
entities_.benchmark_demo.nodes_.[24]
entities_.benchmark_demo.nodes_.[25]
entities_.benchmark_demo.nodes_.[26]
entities_.benchmark_demo.nodes_.[28]
entities_.benchmark_demo.nodes_.[29]
entities_.benchmark_demo.nodes_.[30]
entities_.benchmark_demo.nodes_.[32]
entities_.benchmark_demo.nodes_.[34]
entities_.benchmark_demo.nodes_.[35]
entities_.benchmark_demo.nodes_.[37]
entities_.benchmark_demo.nodes_.[39]
entities_.benchmark_demo.nodes_.[41]
entities_.benchmark_demo.nodes_.[42]
entities_.benchmark_demo.nodes_.[43]
entities_.benchmark_demo.nodes_.[44]
entities_.benchmark_demo.nodes_.[45]
entities_.benchmark_demo.nodes_.[47]
entities_.benchmark_demo.nodes_.[48]
entities_.benchmark_demo.nodes_.[49]
entities_.benchmark_demo.nodes_.[51]
entities_.benchmark_demo.nodes_.[52]
entities_.benchmark_demo.nodes_.[53]
entities_.benchmark_demo.nodes_.[54]
entities_.benchmark_demo.nodes_.[56]
entities_.benchmark_demo.nodes_.[59]
entities_.benchmark_demo.nodes_.[60]
entities_.benchmark_demo.nodes_.[61]
entities_.benchmark_demo.nodes_.[62]
entities_.benchmark_demo.nodes_.[63]
entities_.benchmark_demo.nodes_.[66]
entities_.benchmark_demo.nodes_.[67]
entities_.benchmark_demo.nodes_.[70]
entities_.benchmark_demo.nodes_.[71]
entities_.benchmark_demo.nodes_.[72]
entities_.benchmark_demo.nodes_.[74]
entities_.benchmark_demo.nodes_.[75]
entities_.benchmark_demo.nodes_.[76]
entities_.benchmark_demo.nodes_.[77]
entities_.benchmark_demo.nodes_.[78]
entities_.benchmark_demo.nodes_.[79]
entities_.benchmark_demo.nodes_.[84]
entities_.benchmark_demo.nodes_.[86]
entities_.benchmark_demo.nodes_.[96]
entities_.benchmark_demo.nodes_.[100]
entities_.benchmark_demo.nodes_.[101]
entities_.benchmark_demo.nodes_.[102]
entities_.benchmark_demo.nodes_.[103]
entities_.benchmark_demo.nodes_.[104]
entities_.benchmark_demo.nodes_.[105]
entities_.benchmark_demo.nodes_.[108]
entities_.benchmark_demo.nodes_.[110]
entities_.benchmark_demo.nodes_.[111]
entities_.benchmark_demo.nodes_.[112]
entities_.benchmark_demo.nodes_.[113]
entities_.benchmark_demo.nodes_.[114]
entities_.benchmark_demo.nodes_.[115]
entities_.benchmark_demo.nodes_.[116]
entities_.benchmark_demo.nodes_.[117]
entities_.benchmark_demo.nodes_.[118]
entities_.benchmark_demo.nodes_.[119]
entities_.benchmark_demo.nodes_.[120]
entities_.benchmark_demo.nodes_.[121]
entities_.benchmark_demo.nodes_.[122]
entities_.benchmark_demo.nodes_.[123]
entities_.benchmark_demo.nodes_.[124]
entities_.benchmark_demo.nodes_.[125]
entities_.benchmark_demo.nodes_.[127]
entities_.benchmark_demo.nodes_.[128]
entities_.benchmark_demo.nodes_.[129]
entities_.benchmark_demo.nodes_.[130]
entities_.benchmark_demo.nodes_.[131]
entities_.benchmark_demo.nodes_.[133]
entities_.benchmark_demo.nodes_.[134]
entities_.benchmark_demo.nodes_.[135]
entities_.benchmark_demo.nodes_.[136]
entities_.benchmark_demo.nodes_.[137]
entities_.benchmark_demo.nodes_.[138]
entities_.benchmark_demo.nodes_.[139]
entities_.benchmark_demo.nodes_.[140]
entities_.benchmark_demo.nodes_.[141]
entities_.benchmark_demo.nodes_.[144]
entities_.benchmark_demo.nodes_.[145]
entities_.benchmark_demo.nodes_.[146]
entities_.benchmark_demo.nodes_.[147]
entities_.benchmark_demo.nodes_.[152]
entities_.benchmark_demo.nodes_.[153]
entities_.benchmark_demo.nodes_.[155]
entities_.benchmark_demo.nodes_.[156]
entities_.benchmark_demo.nodes_.[157]
entities_.benchmark_demo.nodes_.[159]
entities_.benchmark_demo.nodes_.[160]
entities_.benchmark_demo.nodes_.[162]
entities_.benchmark_demo.nodes_.[164]
entities_.benchmark_demo.nodes_.[165]
entities_.benchmark_demo.nodes_.[166]
entities_.benchmark_demo.nodes_.[167]
entities_.benchmark_demo.nodes_.[171]
entities_.benchmark_demo.nodes_.[173]
entities_.benchmark_demo.nodes_.[174]
entities_.benchmark_demo.nodes_.[175]
entities_.benchmark_demo.nodes_.[177]
entities_.benchmark_demo.nodes_.[179]
entities_.benchmark_demo.nodes_.[180]
entities_.benchmark_demo.nodes_.[181]
entities_.benchmark_demo.nodes_.[182]
entities_.benchmark_demo.nodes_.[183]
entities_.benchmark_demo.nodes_.[184]
entities_.benchmark_demo.nodes_.[185]
entities_.benchmark_demo.nodes_.[186]
entities_.benchmark_demo.nodes_.[187]
entities_.benchmark_demo.nodes_.[188]
entities_.benchmark_demo.nodes_.[189]
entities_.benchmark_demo.nodes_.[191]
entities_.benchmark_demo.nodes_.[195]
entities_.benchmark_demo.nodes_.[196]
entities_.benchmark_demo.nodes_.[197]
entities_.benchmark_demo.nodes_.[198]
entities_.benchmark_demo.nodes_.[200]
entities_.benchmark_demo.nodes_.[205]
entities_.benchmark_demo.nodes_.[206]
entities_.benchmark_demo.nodes_.[210]
entities_.benchmark_demo.nodes_.[211]
entities_.benchmark_demo.nodes_.[212]
entities_.benchmark_demo.nodes_.[213]
entities_.benchmark_demo.nodes_.[214]
entities_.benchmark_demo.nodes_.[215]
entities_.benchmark_demo.nodes_.[216]
entities_.benchmark_demo.nodes_.[219]
entities_.benchmark_demo.nodes_.[222]
entities_.benchmark_demo.nodes_.[224]
entities_.benchmark_demo.nodes_.[226]
entities_.benchmark_demo.nodes_.[227]
entities_.benchmark_demo.nodes_.[229]
entities_.benchmark_demo.nodes_.[231]
entities_.benchmark_demo.nodes_.[232]
entities_.benchmark_demo.nodes_.[233]
entities_.benchmark_demo.nodes_.[234]
entities_.benchmark_demo.nodes_.[235]
entities_.benchmark_demo.nodes_.[236]
entities_.benchmark_demo.nodes_.[237]
entities_.benchmark_demo.nodes_.[238]
entities_.benchmark_demo.nodes_.[239]
entities_.benchmark_demo.nodes_.[245]
entities_.benchmark_demo.nodes_.[248]
entities_.benchmark_demo.nodes_.[249]
entities_.benchmark_demo.nodes_.[250]
entities_.benchmark_demo.nodes_.[251]
entities_.benchmark_demo.nodes_.[252]
entities_.benchmark_demo.nodes_.[253]
entities_.benchmark_demo.nodes_.[254]
entities_.benchmark_demo.nodes_.[255]
entities_.benchmark_demo.nodes_.[256]
entities_.benchmark_demo.nodes_.[257]
entities_.benchmark_demo.nodes_.[258]
entities_.benchmark_demo.nodes_.[259]
entities_.benchmark_demo.nodes_.[260]
entities_.benchmark_demo.nodes_.[261]
entities_.benchmark_demo.nodes_.[262]
entities_.benchmark_demo.nodes_.[263]
entities_.benchmark_demo.nodes_.[264]
entities_.benchmark_demo.nodes_.[265]
entities_.benchmark_demo.nodes_.[266]
entities_.benchmark_demo.nodes_.[267]
entities_.benchmark_demo.nodes_.[269]
entities_.benchmark_demo.nodes_.[270]
entities_.benchmark_demo.nodes_.[272]
entities_.benchmark_demo.nodes_.[275]
entities_.benchmark_demo.nodes_.[276]
entities_.benchmark_demo.nodes_.[277]
entities_.benchmark_demo.nodes_.[278]
entities_.benchmark_demo.nodes_.[279]
entities_.benchmark_demo.nodes_.[280]
entities_.benchmark_demo.nodes_.[281]
entities_.benchmark_demo.nodes_.[282]
entities_.benchmark_demo.nodes_.[283]
entities_.benchmark_demo.nodes_.[284]
entities_.benchmark_demo.nodes_.[285]
entities_.benchmark_demo.nodes_.[286]
entities_.benchmark_demo.nodes_.[287]
entities_.benchmark_demo.nodes_.[288]
entities_.benchmark_demo.nodes_.[289]
entities_.benchmark_demo.nodes_.[290]
entities_.benchmark_demo.nodes_.[291]
entities_.benchmark_demo.nodes_.[292]
entities_.benchmark_demo.nodes_.[293]
entities_.benchmark_demo.nodes_.[294]
entities_.benchmark_demo.nodes_.[295]
entities_.benchmark_demo.nodes_.[296]
entities_.benchmark_demo.nodes_.[297]
entities_.benchmark_demo.nodes_.[298]
entities_.benchmark_demo.nodes_.[299]
entities_.benchmark_demo.nodes_.[300]
entities_.benchmark_demo.nodes_.[301]
entities_.benchmark_demo.nodes_.[302]
entities_.benchmark_demo.nodes_.[303]
entities_.benchmark_demo.nodes_.[304]
entities_.benchmark_demo.nodes_.[305]
entities_.benchmark_demo.nodes_.[306]
entities_.benchmark_demo.nodes_.[308]
entities_.benchmark_demo.nodes_.[309]
entities_.benchmark_demo.nodes_.[310]
entities_.benchmark_demo.nodes_.[311]
entities_.benchmark_demo.nodes_.[314]
entities_.benchmark_demo.nodes_.[315]
entities_.benchmark_demo.nodes_.[318]
entities_.benchmark_demo.nodes_.[319]
entities_.benchmark_demo.nodes_.[321]
entities_.benchmark_demo.nodes_.[323]
entities_.benchmark_demo.nodes_.[324]
entities_.benchmark_demo.nodes_.[325]
entities_.benchmark_demo.nodes_.[326]
entities_.benchmark_demo.nodes_.[327]
entities_.benchmark_demo.nodes_.[328]
entities_.benchmark_demo.nodes_.[329]
entities_.benchmark_demo.nodes_.[330]
entities_.benchmark_demo.nodes_.[331]
entities_.benchmark_demo.nodes_.[332]
entities_.benchmark_demo.nodes_.[333]
entities_.benchmark_demo.nodes_.[334]
entities_.benchmark_demo.nodes_.[335]
entities_.benchmark_demo.nodes_.[336]
entities_.benchmark_demo.nodes_.[337]
entities_.benchmark_demo.nodes_.[338]
entities_.benchmark_demo.nodes_.[339]
entities_.benchmark_demo.nodes_.[340]
entities_.benchmark_demo.nodes_.[341]
nodes_
lastCenterX_
lastCenterY_
bIsPrefabTopSequence_
entities_.benchmark_demo.connectors_.[0]
entities_.benchmark_demo.connectors_.[1]
entities_.benchmark_demo.connectors_.[2]
entities_.benchmark_demo.connectors_.[3]
entities_.benchmark_demo.connectors_.[4]
entities_.benchmark_demo.connectors_.[5]
entities_.benchmark_demo.connectors_.[6]
entities_.benchmark_demo.connectors_.[7]
entities_.benchmark_demo.connectors_.[8]
entities_.benchmark_demo.connectors_.[9]
entities_.benchmark_demo.connectors_.[10]
entities_.benchmark_demo.connectors_.[11]
entities_.benchmark_demo.connectors_.[12]
connectors_
benchmark_demo
SQEX.Ebony.Framework.Sequence.SequenceContainer
isBrowsable_
inValue_
inVehicleActor_
connections_
actor_
kind_
ACTOR_VEHICLE
[1]
Black.Sequence.Actor.SequenceVariableActorObject
pinName_
Arg0
pinValueType_
arg0_
SQEX.Ebony.Framework.Node.GraphVariableInputPin
refInPorts_
out_
in_
in1_
eventId_
WM_G_COMM_VE_RIDE
pDependencyPin_
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.benchmark_demo.nodes_.[3].refInPorts_.arg0_
refInPorts_.arg0_
pointer
table_
param
prefix_
VEHICLE_RIDE_PATTERN_
value_
DEFAULT_NOCT_DRIVER
SQEX.Ebony.Framework.Sequence.Variable.Primitive.SequencePrimitiveFixid
arguments_
printLog_
notifyRange_
LOCAL_MACHINE_REMOTE_EVENT
[3]
Black.Sequence.Event.Trigger.SequenceRemoteEventRequest
Isolated_
floatPin_
floatKeepTimePin_
floatKeepSpeedPin_
boolPin_
integerPin_
stopped_
target_
AUTO_DRIVE_DEFINED_ROUTE
floatValue_
floatKeepTimeValue_
floatKeepSpeedValue_
destId_
DU_PARKING_12
isStop_
standingTime_
isKeepDirection_
destList_0
Black.Sequence.Actor.AI.Vehicle.VehicleNavigationDestIdItem
destList_
isLoopValue_
loopNumValue_
int
isStopEngineAtEnd_
boolValue_
getOffType_
VRG_AUTO
isNeedChangeVehicleCamera_
[4]
Black.Sequence.Actor.AI.Vehicle.SequenceActionAIVehicleSetAssist
true_
layCheckNG_
rayCheckSuccess_
positionOffset_
rotationOffset_
entityGroupFlag_
pointNodeActorVarOutPin_
targetActorPin_
isTeleportCamera_
affectRotTypeForTargetActorPin_
ROT_Y
isUseRayCheck_
isForceCreateActor_EvenRayCheckNG_
upperRayOffset
lowerRayOffset
bRayCastShiftBlockCollision_
isRaycastBGOnly_
waitCollisionAfterSetTrans_
isAffectRotYTargetActorPin_
isWorldRotationOffset_
isMoveToTargetActorScene_
rotatePositionOffsetWithTargetActorRotation
[5]
Black.Sequence.Action.Actor.SequenceActionActorSetTransform
in2_
wakeUpPin_
VE_COMM_REGALIA_RIDE_ON
[6]
Black.Sequence.Event.Trigger.SequenceRemoteEventTrigger
reset_
[7]
SQEX.Ebony.Framework.Sequence.Action.SequenceActionSync2
VE_COMM_EVENT_WRECKER
[9]
VE_COMM_EVENT_WRECKER_END_JET_BENCH
[11]
[12]
false_
finished_
createdVehicle_
isSetTranslate_
isOverwriteLoadData_
spawnPointPin_
upperExtentOffset_
lowerExtentOffset_
isSetVehicleType_
vehicleType_
CAR_REGALIA
isDisposePreviewVehicle_
isSetKinematic_
isUpdateSaveData_
[13]
Black.Sequence.Actor.AI.Vehicle.SequenceActionCreatePlayerVehicle
entityPointer_
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.vehicle_road
entities_.spawn.entities_.vehicle_road
[16]
Black.Sequence.Variable.SequenceConstSpawnPointEntity
operatorType_
BOC_OPERATOR_NOT_NULL
operatorTypeLast_
A
dynamicVarInputPin2_
condition_
resultPin_
[18]
Black.Sequence.Operator.Compare.SequenceOperatorCompareObject
[19]
[20]
Black.Sequence.Control.SequenceActionControlIf
[21]
ACTOR_NOCTIS
[22]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.noctis
entities_.spawn.entities_.noctis
[23]
label_
WS_IS_STOP_ECOLOGY
valuePin_
labelPin_
isFixid_
[24]
Black.Sequence.Control.GameFlag.SequenceActionControlSetGameFlagFixId
bUseFrame_
[25]
Black.Sequence.Actor.AI.SequenceActionAINone
inCharEntryPath_
overwriteParameterIDPin_
spawnSets_
spawnSet_
actorType_
ENEMY
autoLoadCharaEntry_
charaEntry_
character/em/em04/entry/em04_020_armor_d_kargo.ebex
overwriteParameterID_
NONE
defaultAIControllerType_
CONTROLLER_TYPE_SEQUENCE_VS0
overwriteInteractionParamId_
teritoryFixId_
isOverwriteDefaultControllerType_
overrideAIParamId_
maxSpawnNum_
minSpawnNum_
maxAliveNum_
minAliveNum_
[26]
Black.Sequence.Actor.SceneControl.SequenceActionSCPersonalSetting
isSameActorRayCheckNG_
isHoldLODLevel_
deleteActorsAtDestroy_
setInactiveAtSpawn_
setFadeAtSpawn_
failAtNoResource_
deleteWhenEnterTray_
useSystemTime_
abortInputPin_
recoverInputPin_
recoverStopPin_
failed_
eachSpawned_
allSpawned_
recoverSuccess_
spawnedList_
lastSpawnedList_
actor2Pin_
lastSpawned_
lastRecovered_
spawnPointType_
BSSPT_SpecifiedPointOnly
spawnRadius_
isUseEachBlackPathNodeRadius_
retryCountWhenRadius_
retryLimitRayCheckNGCount_
teamName_
NOTEAM
teamType_
NOTYPE
teamNameId_
NO_TEAM
teamTypeId_
NO_TYPE
teamParamID_
INVALID_ID
tacticsID_
TACTICS_NONE
roleSetType_
ROLE_SET_TYPE_VS0
bAutoTeamMerge_
spawnWeightType1_
BSSWT_NoWeight
spawnWeightType2_
spawnWeightType3_
spawnPointWeightThreshhold_
spawnPointSamePointWeightImpact_
afterSpawnWaitTime_
isDeathActorRecover_
m_SceneNoWhenActivated
m_bIsScriptActivated
m_SelectRotationType
BlkSCSRT_SpecificVector
autoRandomYawMin_
autoRandomYawMax_
TimeBetweenPawnSpawns
MinTimeBetweenPawnSpawns
isIKRayCheck_
[28]
Black.Sequence.Action.Actor.SceneControl.SequenceActionSCActorCreate
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.enemy
entities_.spawn.entities_.enemy
[29]
[30]
battleAreaPin_
moveTobattleAreaPin_
moveToSpawnedList_
isPlayerBattleAreaIn_
battleAreaOutActorListPin_
movedToBattleAreaOutPin_
isTeritoryOutTimerDeath_
[32]
Black.Sequence.Action.Level.SequenceActionSetBattleArea
extinctionOut_
stop_
battle_
updateStatusFlag_
changeActivate_
[34]
Black.Sequence.Action.Level.SequenceActionGetBattleAreaStatus
prefixType_
TERITORY_FIXID_PREFIX_TERITORY_LAYOUT
JET_BENCH_ENEMY
teritoryFixId_sub_
[35]
Black.Sequence.Action.Level.SequenceActionBattleAreaNotification
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.battleareaentity01
[37]
Black.Sequence.Variable.SequenceConstPointEntityBase
autoBattle_
[39]
Black.Sequence.Action.Debug.SequenceActionDebugSetAutoBattleMode
actors_
invincible_
damage9999_
saveDataState_
SAVE_DATA_STATE_AS_IS
[41]
Black.Sequence.SequenceActionSetPlayerInvincible
gage_
encountGage_
second_
resultReset_
_tool_nodeStyle_
[42]
Black.Sequence.Action.Level.BattleArea.SequenceActionSetForceEncountGage
summonId_
SAVE_SUMMON_SHIVA
addAmount_
drawMenu_
randomPlayer_
menu_finish_
success_
fail_
[43]
Black.Sequence.Action.Actor.Accessory.SequenceActionActorGetSummon
cancel_
stopPin_
disable_
timePin_
delayType_
DT_TIME
leftValueOut_
time_
isRandom_
randomMin_
randomMax_
forceAtPause_
forceFrameCount_
[44]
SQEX.Ebony.Framework.Sequence.Action.SequenceActionWaitTime
UCon_
summonDirection_
SAVE_SUMMON_DIRECTION_FULL_SPEC
startSummonStage_
SUMMON_STAGE_PRESAGE
isCheckPlayerDead_
[45]
Black.Sequence.Action.Level.Summon.SequenceActionStartSummonForce
lastSceneKeepPin_
actorPin_
vector1Pin_
float1Pin_
int1Pin_
commandSetPin_
functionIdPin_
functionId_
GAME_LEVEL_ATTENTION_MODE_NONPRAIABLE
lastSceneKeep_
[47]
Black.Sequence.Control.SequenceActionCameraCallSequenceFixId
[48]
inPin_
fadeTime_
interpMode_
IM_SPLINE
[49]
Black.Sequence.Action.Actor.SequenceActionActorDelete
openMenu_
suspendMenu_
SETUP_RUN_END_JET_BENCH
[51]
[52]
outIn_
succeeded_
bEndByDamage_
bEndByEncountGauge_
bCancelByBattle_
bReturnNormalModeWhenFinish_
bForceExec_
bWaitAction_
bEnableNormalPosture_
bHideForReset_
bHideReturnNormal_
bHideEndDanage_
bHideNormalPosture_
movement_
JOG
speedRate_
timeout_
bCorrectionOfcoordinates_
arrivalDistance_
[53]
Black.Sequence.Action.Actor.AI.AIMode.SequenceActionExecAIModeGoTo
[54]
[56]
isRelease_
finish_
completed_
packagePathPin_
packagePath_
level/world/worldshare/plan/stay/camp/camp_event_group_jet_bench.ebex
valueUniqueId_
valueLoadPosition_
positionTargetActor_
isRelese_
isLoadSubPackage_
forAreaLoading_
isToLocateSequencePackagePosition_
checkReleasedAtInitialLoadMode_
isEnableSamePackageLoading_
uniqueId_
loadPosition_
priorityType_
PRIORITY_TYPE_DEFAULT
[59]
Black.Sequence.Action.Level.SequenceActionSetLevelPackageLoad
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.point_du_share_camp21
[60]
color_
Color
fadeSound_
NONE_SOUND_FADE
[61]
Black.Sequence.ScreenEffect.SequenceActionColorFadeOut
enable_
up_
right_
down_
a_
b_
x_
y_
triangle_
circle_
cross_
square_
select_
start_
l1_
r1_
l2_
r2_
l3_
r3_
lt_
rt_
lx_
ly_
rx_
ry_
[62]
Black.Sequence.Pad.SequenceActionPadSimulation
push_
bIsNeedShiftPress_
bIsNeedCtrlPress_
bIsNeedAltPress_
inputKey_
NumPad9
[63]
SQEX.Ebony.Framework.Sequence.Event.SequenceEventKeyboardInput
[66]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.noctis_camp_point
entities_.spawn.entities_.noctis_camp_point
[67]
[70]
isEnabled_
[71]
SQEX.Ebony.Framework.Sequence.Event.SequenceEventFrameUpdated
[72]
GETOFF_VEHICLE
VRG_NORMAL
[74]
addGil_
get_gil_
[75]
Black.Sequence.Action.Actor.Accessory.SequenceActionActorGetGil
[76]
WALK
[77]
actor1_
[78]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.chocobo
entities_.spawn.entities_.chocobo
[79]
two_
itemId_
SQ_ITEM_CHOCOBO_WHISTLE
checkDouble_
add_amount_
add_item_
add_item_fixid_
[84]
Black.Sequence.Action.Actor.Accessory.SequenceActionActorGetItem
MAIN_QT_CHAP_CHOCOBO
[86]
WM_G_CHOC_CALLING
[96]
rentalDays_
[100]
Black.Sequence.Action.Chocobo.SequenceActionChocoboRental
[101]
SQEX.Ebony.Framework.Sequence.Variable.SequenceConstInt
timeoutValue_
[102]
Black.Sequence.Action.Actor.SequenceActionActorWaitLoading
actor2_
ACTOR_CHOCOBO
[103]
open_
[104]
left_
[105]
[108]
float_
A2A_DISTANCE
joint1_
joint2_
[110]
Black.Sequence.Actor.SequenceVariableCalcActor2Actor
argumentNum_
ŠŁíń╗Âň╝Ć1  <=,5
activateAndClose_
dynamicTriggerOutputPin8_
ŠŁíń╗Âň╝Ć2
dynamicTriggerOutputPin7_
expression1
<=,5
expression3
>,150,<=,300
expression4
>,300
[111]
Black.Sequence.Control.SequenceActionControlIfCompare
close_
toggle_
closing_
closed_
[112]
SQEX.Ebony.Framework.Sequence.Action.SequenceActionGate
interval_
[113]
SQEX.Ebony.Framework.Sequence.Event.SequenceEventCyclicUpdated
[114]
IS_RIDE
intPin_
chocoboPin_
[115]
Black.Sequence.Actor.AI.Vehicle.SequenceActionAIChocoboGetStatus
[116]
routeId_
__PLACE_HOLDER__CHOCOBO_BENCH
activateMode_
ACTIVATE_MODE_NORMAL
SLOW
[117]
Black.Sequence.Action.Actor.AI.AIMode.SequenceActionExecAIModeRoute
[118]
[119]
[120]
bool_
action_target_
INTERACTION_REACTION
mask_
[121]
Black.Sequence.Actor.SequenceActionInteractionMask
ACTOR_PC
[122]
[123]
[124]
[125]
enablePin_
touch_
disablePin_
entityLableId_
statusExScope_
ScopeOutTriggerStatus_None
[127]
Black.Sequence.Action.Quest.SequenceActionQuestSetTriggerEntity
triggerPointPin_
remoteEvent_
unTouch_
attackIn_
attackOut_
causedActorList_
causedActor_
triggerActor_
waitEntity_
eventType_
ET_ENTITY
eventTypeLast_
canCatchSameTimeEvents_
canCatchSameTimeEventsPerfectly_
[128]
Black.Sequence.Event.SequenceEventTriggerMultiStatus2
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.trigger_chocobo_camera
[129]
[130]
[131]
[133]
[134]
[135]
[136]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.chocobo_root
entities_.spawn.entities_.chocobo_root
[137]
speedPin_
speed_
[138]
Black.Sequence.Action.System.SequenceActionSetWorldTimerSpeed
weatherTransitionTime_
overrideType_
NORMAL_EVENT
weatherType_
WEATHER_TYPE_A
weatherKey_
cleigne
saveTarget_
[139]
Black.Sequence.Action.Weather.SequenceActionOverrideWeather2
WEATHER_TYPE_C
[140]
[141]
[144]
[145]
[146]
Black.Sequence.ScreenEffect.SequenceActionColorFadeIn
[147]
[152]
[153]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.noctis_camp_battle
entities_.spawn.entities_.noctis_camp_battle
[155]
[156]
BSSPT_InRadius
BlkSCSRT_AutoRandom
[157]
character/es/es00/entry/es00_000_soldier.ebex
[159]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.enemy_box
entities_.spawn.entities_.enemy_box
[160]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.noctis_fishing_point
entities_.spawn.entities_.noctis_fishing_point
[162]
hour_
unsigned int
minute_
setting_
varSet_
[164]
Black.Sequence.Action.System.SequenceActionSetWorldTimerValue
[165]
dayTime_
hourFloat_
days_
enabled_
passingDay2_
instantUpdate2_
passingDay_
instantUpdate_
[166]
Black.Sequence.Variable.SequenceVariableWorldTimer
[167]
[171]
Bool
dynamicPin1_
SQEX.Ebony.Framework.Node.GraphVariableOutputPin
refOutPorts_
labelScope_
LS_Global_Scope
isCreateWhenNotFound_
useTimer_
timerType_
TT_DECREMENT
stopTimerValue_
GAME_MODE_LOOP
labelType_
TYPE_BOOL
labelTypeLast_
[173]
Black.Sequence.Variable.Labeled.SequenceVariableLabeledFixId
[174]
Black.Sequence.Action.System.SequenceActionExitGame
closeMenu_
refOutPorts_.dynamicPin1_
[175]
[177]
FRAME_COUNT_START_RESET
[179]
[180]
[181]
playerBankNumber_
SAVE_PLAYER_NOCTIS
level_
level_pin_
[182]
Black.Sequence.Action.Actor.StatusGrow.SequenceActionActorAddLevel
SAVE_PLAYER_GLADIOLUS
[183]
SAVE_PLAYER_IGNIS
[184]
SAVE_PLAYER_PROMPTO
[185]
[186]
[187]
[188]
[189]
refInPorts_.dynamicPin1_
[191]
SQEX.Ebony.Framework.Sequence.Action.SequenceActionSetBoolVariableDirect
[195]
[196]
[197]
[198]
[200]
opened_
canceled_
pressButtonDecided_
pressButtonOther_
dialogFixId_
keyHelpFixId_
dialogString_
 GAME_MODE_LOOP -> True
dialogPos_
outputID_
inputID_
dialogSeconds_
disableCloseSeconds_
messageSpecificationType_
SPECIFICATION_STRING
forceDisp_
enablePause_
enableCancelClose_
[205]
Black.Sequence.Action.Menu.SequenceActionInfoWindow
[206]
speedRatePin_
[210]
[211]
[212]
[213]
WEATHER_TYPE_B
[214]
[215]
__PLACE_HOLDER__NOCTIS_BENCH
[216]
refActor_
SET_GASOLINE
fixidValue_
intValue_
envStateValue_
ENV_STATE_NORMAL
timeToUnfreeze_
[219]
Black.Sequence.Actor.AI.Vehicle.SequenceActionAIVehicleSetStatus
level/world/worldshare/plan/stay/worldshare_stay_bonamik.ebex
[222]
WM_G_STAY_CAMP_START_JET_BENCH
[224]
[226]
WM_G_STAY_CAMP_END_JET_BENCH
[227]
 ŃéźŃâíŃâęńŻťŠłÉšöĘŃâçŃâÉŃââŃé░ -> ON
[229]
one_
answerString1_
ŃâëŃâęŃéĄŃâľ
answerString2_
ŃâüŃâžŃé│Ńâť
isPlayerControlOff_
bSetPause_
[231]
Black.Sequence.Action.Menu.SequenceActionSelectMenuInOut
SETUP_RUN_END_JET_BENCH_CAMERA
[232]
[233]
[234]
[235]
BENCH_DRIVE_CAMERA_START
[236]
BENCH_DRIVE_CAMERA_END
[237]
three_
four_
five_
six_
cancelled_
reqNext_
reqPreview_
Ńâ¬ŃâŚŃâČŃéĄŃüÖŃéő
[238]
[239]
[245]
BENCH_CHOCOBO_CAMERA_END
[248]
BENCH_CHOCOBO_CAMERA_START
[249]
[250]
[251]
[252]
[253]
[254]
[255]
isEnableBGCollision_
bgEnabledInterpolationTime_
bgEnabledSearchGroundLength_
[256]
Black.Sequence.Actor.SequenceActionActorSetCollisionEnable
ACTOR_CHOCOBO_GLADIO
[257]
ACTOR_CHOCOBO_PROMPT
[258]
ACTOR_CHOCOBO_IGNIS
[259]
pinNum_
swfEntryEntity_
outValue_
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.swfentryentity01
[260]
Black.Sequence.Variable.SequenceVariableSwfEntryEntity
requestAddMenu_
cancelRequestMenu_
quitMenu_
resumeMenu_
[261]
Black.Sequence.Action.Menu.SequenceActionMenuLogic
blackLevelMode_
BLM_EVENT
eventModeLayer_
BEML_BASE
pcControlFlag_
cameraFadeFlag_
isEnableMotionBlur_
isNeedToShowRegalia_
preparedFadeInFrame_
fadeOutFrame_
fadeInFrame_
isEnableSkip_
eventSkipFadeOutFrame_
eventSkipFadeInFrame_
preparedPin_
[262]
Black.Sequence.Action.Level.LevelMode.SequenceActionSetLevelModeNew
[263]
[264]
WM_G_STAY_FIRST_TIMELINE_START
[265]
[266]
SM00_03SIV_10
in3_
[267]
Black.Sequence.Event.Event.SequenceEventEventFinished
[269]
SQEX.Ebony.Framework.Sequence.Action.SequenceActionSync3
[270]
JET_BENCHMARK_FISHING_START
[272]
FishingSettings
refIn1
FishSpwanEntities
entity_
refIn2
Š░┤ŔŹëEntityŃâ¬Ńé╣Ńâł/Ńé░ŃâźŃâ╝ŃâŚ
refIn3
Š░┤ÚŁóÚźśŃüĽEntity
refIn4
ForceStop
delayTime_
delayMaxTime_
pinType_
PT_ARBITRARY
triIn1
SQEX.Ebony.Framework.Node.GraphTriggerInputPin
triInPorts_
Finished
triOut1
SQEX.Ebony.Framework.Node.GraphTriggerOutputPin
InteractedToIcon
triOut2
FinishFadeoutFinished
triOut3
triOutPorts_
trayname_
PrefabTray1
headerColorUserDefine_
bodyColorUserDefine_
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.fishing_jet_benchmark
isOpen
[275]
SQEX.Ebony.Framework.Sequence.Tray.PrefabTray
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.fishing.entities_.fishingfishspawnentity01
entities_.fishing.entities_.fishingfishspawnentity01
refInPorts_.refIn2
entities_.fishing_jet_benchmark.entities_.plan_fishing.entities_.sequence_fishing.nodes_.[181]
entities_.benchmark_demo.nodes_.[276].entity_
[276]
SQEX.Ebony.Framework.Sequence.Variable.SequenceConstantTransformEntity
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.fishing.entities_.water_height_point
entities_.fishing.entities_.water_height_point
refInPorts_.refIn4
entities_.benchmark_demo.nodes_.[277].pointNodeActorVarOutPin_
[277]
[278]
[279]
[280]
[281]
[282]
JET_BENCHMARK_FISHING_END
[283]
[284]
[285]
[286]
outStop_
finishByDamage_
finishByEncount_
[287]
Black.Sequence.Action.Actor.AI.AIMode.SequenceActionExecAIModeReset
[288]
category_
MC_BASIC
isEnableAccel_
isEnableBrake_
isEnableHandle_
isEnableGetOff_
isEnableCamera_
isEnableMusic_
isEnableRoof_
isEnableKlaxon_
isEnableUturn_
isEnableAutoSave_
isEnableDriveMenu_
isEnableWaitGetoff_
isEnableCameraRoll_
isEnableTakeOff_
isEnableJump_
[289]
Black.Sequence.Action.Vehicle.SequenceActionSetVehicleController
entitySearchLabelId_
MENUENTRY_NAVIMAP
swfEntryPackagePath_
menu/navimap/script/MenuSwfEntry_NaviMap.ebex
[290]
Black.Sequence.Variable.SequenceVariableResidentSwfEntryEntity
IsVisible
Buddy
SetVisibleEnemy
SetVisibleBuddy
SetVisibleGoal
SetVisibleCar
SetVisibleBuddyEach
SetVisibleTime
SetVisibleOut
[291]
[292]
IS_VE_REGALIA_KEYHELP_MASK
[293]
BLM_RTE
[294]
[295]
[296]
bgmtype_mode_
EVENT_BGM_TYPE
idxFilePath_
sound/resources/20001Music2/jp/bgm_altissia.max
fadeIn_
fadeOut_
isSameSkip_
isSetFade_
[297]
Black.Sequence.Actor.SequenceActionSetBgmset
mode_
MODE_NORMAL
isWeakPlay_
isPlayRecalcSlot_
[298]
Black.Sequence.Actor.SequenceActionChangeBgmMode
isPose_
isKeepContinue_
[299]
Black.Sequence.Actor.SequenceActionStopBgm
[300]
sound/resources/20001Music2/jp/bgm_chocobo.max
[301]
[302]
[303]
sound/resources/20001Music2/jp/bgm_bat_nifuru.max
[304]
[305]
[306]
outPin_
materialType_
MATERIAL_TYPE_NUM
setType_
SET_TYPE_SET
setValue_
controlType_
CONTROL_TYPE_NONE
[308]
Black.Sequence.Action.Actor.Material.SequenceActionActorSetBodyMaterialParameter
attack_
WEAPON_ATTACK_MAIN_DOWN
equipmentId_
WEAPON_WE01_SWORD_009
checkNew_
[309]
Black.Sequence.Action.Actor.Accessory.SequenceActionActorEquipWeapon
[310]
Black.Sequence.Action.Actor.Accessory.SequenceActionActorFullOpenAbilityTree
[311]
[314]
[315]
wetControlType_
FORCE_DRY
gettingDryTime_
gettingWetTime_
perCharacterControl_
[318]
Black.Sequence.Action.Actor.SequenceActionActorWetnessControl
[319]
BENCH_AIRCRAFT_PREPARE
[321]
BENCH_AIRCRAFT_START
[323]
BENCH_AIRCRAFT_END
[324]
Int
UI_P_COMM_JOB_COMMAND_MENU_DECIDE_COMMAND
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.benchmark_demo.nodes_.[325].refInPorts_.arg0_
SQEX.Ebony.Framework.Sequence.Variable.Primitive.SequencePrimitiveInt
[325]
WEAPON_ATTACK_MAIN_UP
[326]
[327]
WEAPON_ATTACK_MAIN_RIGHT
WEAPON_WE03_SPEAR_001
[328]
WEAPON_ATTACK_MAIN_LEFT
[329]
[330]
[331]
[332]
[333]
Black.Sequence.Action.Debug.SequenceActionDebugSetGameSpeed
[334]
actorIgnisPin_
[335]
actorListPin_
actorNoctisPin_
actorGladiolusPin_
actorPromptoPin_
actorGuestPin_
isExcludingUCPC_
[336]
Black.Sequence.Action.Level.Party.SequenceActionGetPartyMembers
[337]
[338]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.ignis_camp_battle
entities_.spawn.entities_.ignis_camp_battle
[339]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.prompto_camp_battle
entities_.spawn.entities_.prompto_camp_battle
[340]
root.entities_.area_duscae_jet_bench.entities_.area_duscae_share_jet_bench.entities_.area_du_share_quest_jet_bench.entities_.spawn.entities_.gladio_camp_battle
entities_.spawn.entities_.gladio_camp_battle
[341]
connectorNo_
[0]
SQEX.Ebony.Framework.Sequence.Connector.SequenceConnectorIn
SQEX.Ebony.Framework.Sequence.Connector.SequenceConnectorOut
[2]
[8]
[10]
jointId_
scriptVisible_
pointType_
TYPE_POINT
paramId_
interactionParamId_
interactionItemId_
positionAttribute_
warpAutoTurnMode_
WATM_CENTER_OF_GRAVITY
warpPostCameraMode_
WPCM_OVER_SHOULDER
warpPostCameraBlendMode_
BLEND_CUBIC
warpPostCameraBlendTime_
warpPostCameraBlendSpeed_
warpGroupId_
magicThunderDamageRangeRadius_
wallCoverRangeRadius_
wallCoverDirection_
RIGHT
point_du_share_camp21
Black.Entity.Node.PointNodeEntity
isEnable_
seedPointFixid_
DEFAULT
areaType_
AREA_BATTLE
groupNo_
battleAreaConditionFixId_
BA_DEFAULT
isAutoMakeBattleTeritory_
triggerType_
TYPE_SPHERE
seedCollisionType_
TYPE_CYLINDER
radius_
summonSuccessRate_
summonIfritLot_
summonIfritDirection_
summonSivaLot_
summonSivaDirection_
summonRamuhLot_
summonRamuhDirection_
summonTitanLot_
summonTitanDirection_
summonLeviathanLot_
summonLeviathanDirection_
summonBahamutLot_
summonBahamutDirection_
elementFirePower_
elementIcePower_
elementThunderPower_
elementEarthPower_
elementWaterPower_
elementLightPower_
elementDarkPower_
isAreaInfoRelease_
battleareaentity01
Black.Entity.Node.BattleAreaEntity
entities_.spawn.entities_.gladiolus
entities_.spawn.entities_.prompto
entities_.spawn.entities_.ignis
entities_.spawn.entities_.vehicle_gas
entities_.spawn.entities_.noctis_fishing_hut
spawn
Black.Entity.EntityGroup
capacity_
battleAreaSeedPointFixid_
noctis
Black.Entity.Node.SpawnPointNodeEntity
gladiolus
prompto
ignis
vehicle_road
vehicle_gas
noctis_camp_point
chocobo
enemy
chocobo_root
noctis_fishing_hut
noctis_fishing_point
noctis_camp_battle
enemy_box
Black.Entity.Node.SpawnBoxNodeEntity
gladio_camp_battle
prompto_camp_battle
ignis_camp_battle
entities_.routeentity01.entities_.routepointentity10
entities_.routeentity01.entities_.routepointentity20
entities_.routeentity01.entities_.routepointentity30
entities_.routeentity01.entities_.routepointentity31
entities_.routeentity01.entities_.routepointentity40
entities_.routeentity01.entities_.routepointentity41
entities_.routeentity01.entities_.routepointentity42
entities_.routeentity01.entities_.routepointentity50
entities_.routeentity01.entities_.routepointentity51
entities_.routeentity01.entities_.routepointentity60
bLoop_
routeMoveType_
ROUTEMOVE_TYPE_ONCE
routeentity01
Black.Entity.RoutePoint.RouteEntity
GROUND
destinationPointRandomRange_
movementOverride_
moveSpeedOverride_
arrivalMoveSpeedOverride_
isEnableDynamicRandomDestination_
destinationDistanceRatioMin_
destinationDistanceRatioMax_
routepointentity10
Black.Entity.RoutePoint.RoutePointEntity
routepointentity20
routepointentity30
routepointentity31
routepointentity40
routepointentity41
routepointentity42
routepointentity50
routepointentity51
routepointentity60
entities_.routeentity02.entities_.routepointentity01
entities_.routeentity02.entities_.routepointentity02
routeentity02
routepointentity01
routepointentity02
touchTarget_
UCPC
characterSelectID_
touchStatus_
TOUCH
touchStatus2_
UNTOUCH
touchStatus3_
touchStatus4_
height_
depth_
width_
count_
enableTrigger_
checkInSameScene_
scaleTriggerWithParent_
isNoCheckFirst_
isNoCheckAtUCOff_
isSetEventModeAtTouch_
touchKind_
TK_ALL
trigger_chocobo_camera
Black.Entity.Node.TriggerEntityQuest
./area_du_share_quest_drive_jet_bench.ebex
495a4cb7-d113-41fc-9e61-6164ecf1433b
area_du_share_quest_drive_jet_bench
SQEX.Ebony.Framework.Entity.EntityPackageReference
./area_du_share_quest_chocobo_jet_bench.ebex
f2b64393-bb64-420c-8ee5-90f008002f6f
area_du_share_quest_chocobo_jet_bench
menuFixID_
menu/jet_bench/script/MenuSwfEntry_JetBenchLogo.ebex
swfentryentity01
Black.Entity.Menu.SwfEntryEntity
8.651421E-06,-132.9797,8.651422E-06,1
../../level/levelresource/prefab/fishing/fishing_jet_benchmark.prefab
21fea4dd-04a2-460f-a6cb-1338233cd4c0
bArchiveDiffResource_
umbraIsTarget_
umbraIsOccluder_
sequenceUpdateOrder_
fishing_jet_benchmark
Black.Entity.Prefab.Prefab
fishing
8.651421E-06,-132.3124,8.651422E-06,1
water_height_point
spawnAreaType_
AREA_ELLIPSE
boxEllipseWidth_
boxEllipseDepth_
circleRadius_
spawnLevel_
AREA_LEVEL_2
spawnMaxCount_
fishingfishspawnentity01
Black.Entity.Minigame.Fishing.FishingFishSpawnEntity
./area_du_share_quest_aircraft_jet_bench.ebex
615d9b55-49fc-491b-a59c-b067c0c36673
area_du_share_quest_aircraft_jet_bench
objects
package

Due to the structure I'm more then sure that it's something like Unreal Engine's 4 Blueprint scripting.

NODE 229:
isPlayerControlOff_

NODE 288:
Bunch of disabling for auto controlling

XMB2:
Code: [Select]
0x00 char[4] header(XMB2)
0x04 uint32 EOF
0x08 uint32 padding?
0x0C uint32 sizeof(section1)
0x10 uint32 padding?
0x14 uint32 Section1

Section1:
uint32 - pointer
byte[4] - type
byte[4] - null?

4
I'm out of ideas... I just can't happen to enable input, and alcochol doesn't seem to help me...

5
All possible parameters:
Code: [Select]
.rdata:00007FF637501D40 0000000A C --locale=
.rdata:00007FF637501D50 0000000A C --ui_lang
.rdata:00007FF637501D60 0000000D C --numThreads
.rdata:00007FF637501D70 00000012 C --numAsyncThreads
.rdata:00007FF637501D88 0000000C C --loop_mode
.rdata:00007FF637501D98 0000000E C --graphicsIni
.rdata:00007FF637501DA8 00000007 C --720p
.rdata:00007FF637501DB0 00000008 C --2160p
.rdata:00007FF637501DB8 00000014 C --displayResolution
.rdata:00007FF637501DD0 00000016 C --renderingResolution
.rdata:00007FF637501DE8 00000014 C --noNvidiaAfterMath

for config see this:
Code: [Select]
.rdata:00007FF637501E40 000002A5 C +wEAAJ8CAAD/W0Jhc2ljU2X/dHRpbmdzXQr/RGlzcGxheVL/ZXNvbHV0aW//bldIPTEyODD/eDcyMApNYXj/RnJhbWVyYXT/ZT0yNDAKUmWPbmRlcvjwBQ8XAUf/cmFwaGljc1D/cmVzZXQ9MAr/U2hvd0Nvbma7aWdZBEZQU1kACnlb/vT0/lNjYWz48O9Nb2RlWQBGUDH/NkJhY2tCdWb/ZmVyPTEKRnX/bGxTY3JlZW7+lAFPblN0YXJ0+3VwWQBIYXJkd+dhcmWsC8MBRFJH72FtbWGNAWU9MfsuM94BTHVtaW5vYW5jZecEMDDEAHdpZ2hTAGNpcwwA3iwDVGFyZ1cCVlP3eW5jcAJOVklE+0lB4gBlV29ya/1z9PdOdmlkaWHPRmxvd1kARxNIYfNpcjgSURZTaGFk3293TGliYhdUZf9ycmFpblRlc89zZWxhCwF2F3VyPWZRFlZYQU9wAiwGXvT3QW50aY8AYWIR/0FtYmllbnRPj2NjbHUREcMBCRBTT3BlY0GIEFgBTAkQNvfxUXWPAHR5WQCUAe9sTE9EjQQ9NzX9CrADRmlsdGVyP0RldGFpbKkAbBPC/vB0+QUQJW0SNQc9Nf8wClRleHR1cv9lQW5pc290co9vcGljHSNZAFkkU+90cmVh9gBnTWUXbW9yACAA
Looks familar? Yeah, that's base64...

Code: [Select]
����[BasicSettings]
DisplayResolutionWH=1280x720
MaxFramerate=240
RenderGraphicsPreset=0
ShowConfigYFPSY�
y[ScalModeY�FP16BackBuffer=1
FullScreenOnStartupY�Hardware DRGammae=1.3Luminoance00�wighS�cis �,TargWVSyncpNVIDIA�eWorksNvidiaFlowY�GHair8QShadowLibbTerrainTessela vur=fQVXAOp,^Anti�abAmbientOcclu SOpecAXL 6Qu�tyY�lLOD=75
Filter?Detail�lt%m5=50
TextureAnisotropic#Y�Y$Strea�gMemor� �

KeyConfig.ini in root directory actually has it all, not quite sure why it doesn't seem to work for input.
Game reads the file as said in Process IO:
Code: [Select]
18:12:40,8167929 ffxv.exe 6832 QueryDirectory E:\FINAL FANTASY XV BENCHMARK\KeyConfig.ini SUCCESS Filter: KeyConfig.ini, 1: KeyConfig.ini
18:12:40,8169401 ffxv.exe 6832 CreateFile E:\FINAL FANTASY XV BENCHMARK\KeyConfig.ini SUCCESS Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: R, ShareMode: Read, Write, AllocationSize: n/a, OpenResult: Opened


6
ffxv.exe parameters as said in launcher (which is written in C# and is not obfuscated):

Code: [Select]
string text = "ffxv.exe";
string text2 = string.Empty;
if (this.QualityComboIndex2 == MainWindow.QualityComboIndexes.LowQuality)
{
text2 += "--graphicsIni config\\GraphicsConfig_BenchmarkLow.ini";
}
else if (this.QualityComboIndex2 == MainWindow.QualityComboIndexes.MiddleQuality)
{
text2 += "--graphicsIni config\\GraphicsConfig_BenchmarkMiddle.ini";
}
else if (this.QualityComboIndex2 == MainWindow.QualityComboIndexes.HighQuality)
{
text2 += "--graphicsIni config\\GraphicsConfig_BenchmarkHigh.ini";
}
if (this.WindowModeComboIndex2 == MainWindow.WindowModeComboIndexes.FullScreen)
{
text2 += " -f";
}
if (this.ResolutionComboIndex2 == MainWindow.ResolutionComboIndexes.Resolution_1280x720)
{
text2 += " --displayResolution 1280 720 --renderingResolution 1280 720";
}
else if (this.ResolutionComboIndex2 == MainWindow.ResolutionComboIndexes.Resolution_1920x1080)
{
text2 += " --displayResolution 1920 1080 --renderingResolution 1920 1080";
}
else if (this.ResolutionComboIndex2 == MainWindow.ResolutionComboIndexes.Resolution_3840x2160)
{
text2 += " --displayResolution 3840 2160 --renderingResolution 3840 2160";
}
if (this.IsAutoLoop)
{
text2 += " --loop_mode";
}
text2 = text2 + " --locale=" + this.LanguageLabels[this.LanguageComboIndex].LocaleText;
ProcessStartInfo startInfo = new ProcessStartInfo
{
UseShellExecute = false,
FileName = text,
Arguments = text2
};
try
{
this.gameProcess = Process.Start(startInfo);
}

7

Yo! I heard you like to take a look at my look!
https://www.dropbox.com/s/fjngs26lflscicq/Ifrit.zip?dl=0


I really tried but couldn't break into renderer or find palette

PS> With the broken wiki I've lost all info about .DAT geometry

9
Uhm


10
FOUND THE FUCKER!
ucrtbase.dll:00007FFF8A01D800 ucrtbase__Exit -this is called asynchronous by one thread. Suspending thread toally makes the game playable with debugger attached.

UPDATE:
Unfortunately it doesn't print any cool debug stuff (maybe before level loading I saw something with [klang])

Okay, now I'm not quite sure how to enable input here xD I bet the input must be on some thread

DUMP TIME!

Luminous.RenderInterface.DefaultWindow
.rdata:00007FF6374128B0 0000000A C GLADIOLUS   

Hm, maybe this script:
SQEX.Ebony.Framework.Sequence.Event.SequenceEventKeyboardInput
EDIT_DISABLED_KEYBOARD_PAD   

Grab 73k lines of all engine scripts/paths/etc here:
https://www.dropbox.com/s/wytfrid4r3ju5nd/FFXV_dumped.txt?dl=0

UPDATE:
I saw "Luminous" only one time, it's always refered as "Black":
BlackConfig.xml

ucrtbase_exit is called by sub_7FF634CAC230 which is called by sub_7FF634CAC79


[klang][info]version 16.2.26.A

UPDATE:

Code: [Select]
.rdata:00007FF637646990 00000007 C ESCAPE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF6376469C8 00000008 C PRT_SCR                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF6376469D0 00000007 C SCR_LK                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF6376469F0 0000000B C BACK_QUOTE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
.rdata:00007FF637646A00 00000005 C CAPS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646A08 00000008 C L_SHIFT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF637646A10 00000007 C L_CTRL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF637646A18 00000008 C WINDOWS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF637646A20 00000006 C L_ALT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646A28 00000006 C MINUS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646A30 00000006 C EQUAL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646A38 0000000B C BACK_SPACE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
.rdata:00007FF637646A48 0000000D C OPEN_BRACKET                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
.rdata:00007FF637646A58 0000000E C CLOSE_BRACKET                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
.rdata:00007FF637646A68 0000000B C BACK_SLASH                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
.rdata:00007FF637646A78 0000000B C SEMI_COLON                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
.rdata:00007FF637646A88 0000000B C APOSTROPHE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
.rdata:00007FF637646A94 00000006 C ENTER                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646A9C 00000006 C COMMA                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646AA4 00000007 C PERIOD                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF637646AAC 00000006 C SLASH                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646AB8 00000008 C R_SHIFT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
.rdata:00007FF637646AC0 00000006 C SPACE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646AC8 00000006 C R_ALT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646AD0 00000005 C FUNC                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
.rdata:00007FF637646AD8 00000005 C MENU                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

11
Scripting and Reverse Engineering / [PC] Final Fantasy XV
« on: 2018-02-09 15:32:35 »
The benchmark is available on:
http://benchmark.finalfantasyxv.com/na/

not much, but maybe that'd be possible to escape benchmark mode

Lot's of floating rocks above ground, character just ran through a car... It's quite messy demo.
Makes HTTP connection to 23.51.123.27

UPDATE:
Okay, I broke it- it's all scripted in "Quest" file. Getting into /datas/quest/duscae/* and grabbing all files makes the game unresponsible (all hud works, game works, it just doesn't produce any motion)

UPDATE2:
Broke out- you just need to delete all quest except area_du_share_quest_jet_bench.earc and as soon as Noct stops fishing you are on your own. Now I have time to actually try to control character

UPDATE3:
Time of day normally passes. I put sniffer on process flow and it only reads:
\datas\sound\resources\20001music2\jp\bgm_hanyo_kyoten.win.mab
in chunks (therefore music is streamed)

from time to time it queries C:\Windows\System32\dinput8.dll

UPDATE4: (18:28)

PS> Yeah, I tried plugging DualShock 4

UPDATE5:
Game has anti-debugger things... I can attach just like in patched MOBIUS:FF

UPDATE6: (18:41)
Loaded dump into IDA. Found FFXV entry point

UPDATE7: (19:09)
By changing EXEs PE format from GUI (sic!) to console you get the debug console, unfortunately it only displays:
2018-02-09T19:09:12.880: DllMain.cpp:22      #0 Attached GfeSDK.dll

UPDATE8: (19:30)
Engine codename is "re_black" or just "black"

UPDATE9: (19:33)
Engine has rich debugging strings and references to internal script language as "klang"
Engine has trap to debugger function (INT 3) [exception throwing]

UPDATE10: (20:11)
Oh SE... SE... SEEEE! You must have love us to introduce all these anti-debugger tricks, but you ain't stopping me!

UPDATE11: (20:12)
So I see you learnt something from Mobius:FF and now you trap debuggers even when already in-game. :-) I'll find you

UPDATE12: (20:17)
Do you feel that SquareEnix? I'm getting closer and... more drunk by the way

UPDATE13: (20:31)
00007FF634A5ACEC - case 8 is your reaper

UPDATE14: (20:40)
One of your threads are detecting debugger... let's see...

UPDATE15: (20:49)
sub_7FF636B5C380 - Raises exception to one thread

12
and do you know how to get animation of model?

wmset objects are non-animated. It only animates the translation+rotation of single object via engine.

I'm having exactly the same issue.  No model appears in the previewer for me of balamb G... just a floating triangle in a sea of blackness. 

Mhm... Does battle stage previewing work? Try to hit "Reset Camera" and get to Display>Textured
I tried to test the newest release on my computer at workplace but I only have battle stage model with me





I was wondering - Do you have documentation as to what files to grab, etc.?  I found Balamb garden and other vehicles, but all I really want is the original GF's ripped to .obj with UV's so that I can put the models into Quixel and use DDO to re-create the textures.

GFs are crap as hell. Some are in EXE, some are in battle.fs, some are in magic.fs; Rinoa's toolset is capable of exporting GFs environments (Like Alexander scene) + dumping geometry manually (for Shiva icespike). For GFs itself someone from here (I forgot the name, sorry!) made a script for transforming GF header into battle DAT file. You probably know that. I don't remember if they have UVs.
Another thing: Textures for GFs are also different. Some are normal TIM, some are weird strawberries (Rinoa's toolset GF>Special texture format>[choose one]).
At the weekend I'll rip all GFs for you.



Quixel and use DDO to re-create the textures.

Is this really that good? I was working so far with educational license of Substance Painter 2 and that's really amazing. Have you tried it? Is Quixel better?


This may have been some kind of 'hackish' fix that the coders did to the PC version so that the linear filtering didn't cause weird seam glitches - OR - it's the issue inherent to DX9, where the texel information is incorrectly calculated and ends up being 2px off.  Is there a way to add the DX9 UV/Texel calculation fix to FF8's rendering shader?  I've got all of the coding resources anyone would need for that, but I have no idea how/where to inject the code because I don't do any coding at all.

I'm still trying to lay my hands on DX buffer and strawberries. I've come really close, but it's still rubbish to me. I only know OpenGL so far, yesterday I checked how to draw primitive with DirectX, maybe I could reverse it from the other side- directly from DX calls.

13
I heard it uses the same thing as FFXHD, so just one giant chunk, it also have the same extension, so maybe the structure is the same.

14
General discussion / Re: Final Fantasy 8 in Unity?
« on: 2018-02-04 14:42:09 »
I'm at it again:



Textures are placeholders

15
It highly depends on which tool you are going to use. Rinoa's toolset is a collection of tools. You can use this software for any FF version you have, but it supports unpacking only PC/Steam files. If you rip some file manually from psx, then it's going to support it.

16
General discussion / Re: FF8 Save editor advice
« on: 2018-01-24 07:45:09 »
If you are really into hacks just to get achievement use SAM:
https://github.com/gibbed/SteamAchievementManager

17
Tools / Re: [FF8] Enemy editor - IFRIT (0.11)
« on: 2018-01-21 20:54:25 »
MonsterAI+CA:   (Where MonsterAI is 0x487DE0 in 2000PC)
Code: [Select]
mov     al, [esi]:
[ESI] - pointer to current operation to parse
al - will hold AI code opcode


Example:
MonsterAI+62E  AI_TALK (opcode 0x1A)
mov dl, [esi] - ESI holds textID (as said in documentation it's byte text_index)
gets saved to local at var_14

MonsterAI+661 now EAX holds absolute address to text to display- here: "5 ?Rm kmpc."- deciphered as "NO MORE!"

So... Yeah, I might be able to make something like real-time AI interpreter I think...

Opcode 0x05 is some sort of PUSH

Isn't it?

Pardon that 'A', I just used ROT-23 for text conversion

18
DIV BY ZERO - CPU error
Looks like I didn't test it perfectly before handing it out. There's sub_496300, a function that parses party abilities. It want's to read some rubbish data and in fact tries to divide some variable by zero. Let me investigate that...

UPDATE:
Ok, got it- it's HP error. It takes it's ability from playable party structure:
01CF75F5 (named K_CHARACTER_HP_B) [Steam should use the same variables]
Calculation: 01CF75F5 + (characterID*0x24)
Let's see... Cockatrice is 0x20 (32 in decimal). So:
I'm setting 01CFE0F0 to 0x20
I'm setting (0x20 * 0x24) + 01CF75F5 to 255 (0xFF)

UPDATE 2:
Loord... another DIVIDE BY ZERO...

UPDATE 3:
Too much strawberries is going on here. I need to find another way. At the moment do this:
Put a breakpoint at 495550 (mov dl, 01CFE0F0)
Step forward, change EDX register (only two last digits) to the monster you want to control in battle. That's for now unfortunately, I need to think how to deal with this now so you can modify it without disassembler and you could access menu normally.

Grab video tut here:
https://www.youtube.com/watch?v=irNiwcGltkw&feature=youtu.be

I think I know how to do it...

UPDATE 4:
You can use assembler script I wrote. It replaces Squall: (change MOV dl, 0x20 to any enemy you want; Keep in mind this only works for battle so far...)
Code: [Select]
alloc(newmem,2048)
label(returnhere)

newmem:
CMP EAX, 0
JNE noSquall
mov dl,0x20
JMP exit
noSquall:
mov dl,[edi+FF8_EN.exe+18FE0F0]
jmp returnhere

"FF8_EN.exe"+95550:
jmp newmem
nop
returnhere:

19
Gameplay Mods / Re: FF8 Party modifier mod?
« on: 2018-01-19 17:28:05 »
http://forums.qhimm.com/index.php?topic=17634.msg255403#msg255403

For GameShark to ePSXe cheat engine address see my wiki page:
http://web.archive.org/web/20171021012301/http://wiki.qhimm.com/view/User:MaKiPL#GameShark_codes_to_PC_version_-_memory_calculation

Quote:
Quote
80078A62 270F --(delete GS directive of MOV [8])-->
00078A62 270F --(Trim the 4 last bytes, it's the MOV value to address)-->
00078A62 --(Now ADD A8B6A0)-->
      Your address in ePSXe 1.9.2: 000B04102

20
Just as requested I'm posting the code for manipulating the party for both 2000 and Steam version:

At 48B7F5 you have:
mov     al, byte ptr ss:SG_PARTY_BATTLE1[ebp]

SG_PARTY_BATTLE1 is DWORD, and EBP holds current pointer to index for getting byte
When EBP is higher than 3 (4) then parsing is done. When AL holds 0xFF, then next character is parsed. Sample party variable:
.data:01CFE74C SG_PARTY_BATTLE dd 0FF050100h
(remember to read variables from end to beginning).

Interesting note: just after party_battle dword there's UnlockedWeapons DWORD and griever name (allocated on 12 bytes including terminator)

so just change (byte):
01CFE74F - to replace 1st party member
01CFE74E - to replace 2nd party member
01CFE74D - to replace 3rd party member

Anyway- that's wrong. I was enough reckless to not note where is the actual model ID stored and that what happened. Anyway, the new method I discovered doesn't require 1ms memory injection but simple memory change and requires you to have fixed party (if not, I'll tell you how to calculate it)

Let's get started:
ParseBattleParty+93   push    eax ; eax stores Party member ID as variables from above
ParseBattleParty+94   call    ParseBattleCharacter

ParseBattleCharacter in PC2000 is located at: 495520
Step by step:
mov     ebx, [esp+CharacterID] ;EBX now stores party ID. Here 00 because Squall is first in party
ParseBattleCharacter+A    lea     eax, [ebx+ebx*8] ; dark magic strawberries
ParseBattleCharacter+17   lea     edi, [ebx+eax*2] ; another dark magic strawberries
ParseBattleCharacter+20   mov     dl, SG_CHARACTER_MODEL_ID[edi] ; DL stores real model ID from King's Edgar codes

SG_CHARACTER_MODEL_ID is at 01CFE0F0

Now math time!
If Squall (ID=00) is in party, then:
x=(0+0*8 )
y=x*2 + 0
z = ((x+y) << 3) + SG_CHARACTER_MODEL_ID_ptr

If Selphie (ID==05) is in party, then:
x=(5+5*8 )
y=x*2 + 5
z = ((x+y) << 3) + SG_CHARACTER_MODEL_ID_ptr

Example calculation in python for selphie:
Code: [Select]
hex(((5+5*8 )*2+5)<<3)will give 0x2f8
Then: 01CFE0F0 + 0x2F8 = 01CFE3E8 = Byte to change - you can do it in CE freely

Changing 01CFE3E8 to 0x20 will give you Cockatrice instead of Selphie in party

Non-hacker guide: (2000 PC)
Now, I'm pretty sure you don't want to do all the calculations and also you don't have all engine IDs for party, so I pre-calculated values for you:
Squall replace- 0x1CFE0F0
Zell replace- 0x1CFE188
Irvine replace- 0x1CFE220
Quistis replace- 0x1CFE2B8
(CharID=4)- 0x1CFE350
Selphie replace- 0x1CFE3E8

Non-hacker guide: (Steam)
I know many of you play Steam version, so here are the codes for Steam:
ParseBattleParty is 0048B7E0 sub_48B7E0
ParseBattleCharacter is 00495530
so SG_CHARACTER_MODEL_ID_ptr is byte_1CFE0F0 (01CFE0F0)
Therefore 2000 PC version and Steam version BOTH SHARE THE SAME ADDRESSES.

21
Didn't get mail but I see annotation on dashboard about it. Quite ridiculous. 1000 subscribers is not that easy thing and 4000 watch time? It sucks!

22
Tools / Re: [FF8] Enemy editor - IFRIT (0.11)
« on: 2018-01-15 13:57:02 »
Some times ago someone sent me the japanese site where I found all enemy scripts dumped and formatted with all magic IDs and texts inside files. Grab it here:

http://www.geocities.jp/agnesboulangerchan/psff8/research/psff8-enemy-ai.zip

For example you can clearly see that 117 (Sorceress 3) is casting magic 327 and 074 on herself at the init. It has all variables named (local and globals) and rich AI documentation with HEX codes, but all in Japanese.

23
Gameplay Mods / Re: [FF8 PC] No GF or Custom GF Squall
« on: 2018-01-04 06:59:16 »
Doomtrain lets you edit default GFs abilities via kernel.bin edit

24
Done!


Source (with whole garbage taken out):
Code: [Select]
alloc(newmem,2048)
label(returnhere)
label(originalcode)

newmem:
PUSH 04
CALL FF8.exe+685E0 //get_key_state
ADD ESP, 4
TEST EAX, EAX
JNZ Lower
PUSH 03
CALL FF8.exe+685E0 //get_key_state
ADD ESP, 4
TEST EAX, EAX
JNZ Upper
JMP originalcode

Lower:
FINIT
FLD [myvar]
FLD1
FSUB st(0), st(1)
FABS
FST [myvar]
CMP [myvar], 0
JNE notzero
MOV [myvar], 43b40000
notzero:
JMP RightCamera

Upper:
FINIT
FLD [myvar]
FLD1
FADD st(0), st(1)
FST [myvar]

RightCamera: //Degree to radians + sine
CMP [myvar], 43b40000
JNA locok
MOV [myvar], 0
locok:
PUSH [myvar]
CALL CalculateRadians
ADD ESP,4


//Y
FINIT
FLD [myvar+8]
FSIN
FLD [myvar+10]
FMUL st(0), st(1)
FSTP [myvar+8] //BattleCamera X (st1>st0)
FILD [myvar+14]
FMULP
FIST [myvar+8]
MOV EAX, [myvar+8]
//SHR EAX, 8
MOV WORD [B8B7F0], AX  //BattleCamera X (correct st0)

//X
PUSH [myvar]
CALL CalculateRadians
ADD ESP,4

FINIT
FLD [myvar+8]
FCOS
FLD [myvar+10]
FMUL st(0),st(1)
FSTP [myvar+8]
FILD [myvar+14]
FMULP
FIST [myvar+8]
MOV EAX, [myvar+8]
MOV [B8B7F4], EAX

//MOV EAX, [B8B7F4]
//SUB EAX, 32
//MOV [B8B7F4], EAX


JMP originalcode

myvar:
dd 42340000  //alpha
dd 40490e56  //PI [4]
dd 00000000  //Temp far for FPU [8]
dd 43340000 //180.0 [C]
dd 41200000 //R [10]
dd 4E20 // [14]

CalculateRadians: //Get Angle to radians
ADD ESP, 4
POP EAX
SUB ESP, 8
MOV [myvar+8], EAX
FINIT
FLD [myvar+4] //st0 has PI
FLD [myvar+C] //st1 has 180.0
FDIV st(1), st(0)
FLD [myvar+8] //alpha
FMUL st(0), st(2)
FST [myvar+8]
RET




originalcode:
push 0000009D
JMP returnhere

"FF8.exe"+A2CA0:
jmp newmem
returnhere:

Let me know if you want something like this in FF7. I need only values for camera world-space X and Y :D

EDIT: Hm.. that doesn't satisfy me enough. I need to do something big...

25
My database is from 2000 release, but that shouldn't be problem to finally port it to Steam. Anyway:
Bloodfest is magic 210, has no FL class, but tend to load texture from constant data at 01470DC4:



Just to inform- your case is quite difficult. This might be special effects that none of us actually reversed so far.
Do you remember any magic that use some similar effect like this?

EDIT: Are you sure we are talking about MAG_210?

I used magic 200 instead, this one has intense green glow effect. I'm reversing it right now.

.text: 00693374 - loads battle.fs file 232 - MAG199_a.DAT; still glow effect

Grr.. I can't find it...

Magic strawberries is mostly working on BdLinkTask. Forced one looped BdLinkTask to retn, still glow effect.

Completely randomly found Stage disappear script at 571230


FOUND IT


As I was afraid- it's on BdLinkTask. Address: 0063A0A0.
Called by MAG_200_NO_MERCY+335

It's a huge class, but finally we know what to reverse

It is called every frame when glow effect is active

Pages: [1] 2 3 ... 20